/* Portable PHP edition. The storefront shares Appora's existing Play-inspired CSS. */
[hidden]{display:none!important}
svg.lucide{width:20px;height:20px;stroke-width:1.8;flex-shrink:0}
.header-actions .lucide{width:21px;height:21px}
.device-chip .lucide,.category-chip .lucide{width:16px;height:16px}
.play-category-link>span .lucide{width:23px;height:23px}
.breadcrumb .lucide{width:14px;height:14px}
.play-search-overlay .lucide{width:19px;height:19px}
.download-help .lucide{width:16px;height:16px}
.play-section-arrow .lucide{width:21px;height:21px}
.review-form .honeypot{position:absolute!important;opacity:0!important;pointer-events:none;width:1px;height:1px;overflow:hidden}
.rating-picker{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}
.rating-picker label{cursor:pointer;display:inline-flex;align-items:center;position:relative}
.rating-picker input{position:absolute;opacity:0}
.rating-picker span{font:700 13px 'Cairo',sans-serif;background:#f7f8fb;border:1px solid #dde3ee;border-radius:9px;padding:6px 11px;color:#677380}
.rating-picker input:checked+span,.rating-picker label:has(input:checked) span{background:#e8f0fe;color:#1967d2;border-color:#8ab4f8}
.rating-picker input:focus-visible+span{outline:2px solid #1a73e8;outline-offset:2px}
.review-stars,.admin-review-stars{color:#e4a52b;letter-spacing:2px}
.review-form .field-label{display:flex;flex-direction:column;gap:7px;margin:13px 0}
.review-form .field-label input,.review-form .field-label textarea{width:100%;padding:12px 14px;border:1px solid #dadce0;border-radius:10px;background:#fff;color:#202124;font-family:'Cairo',sans-serif;resize:vertical}
.review-submit{margin-top:12px}
.app-card-horizontal .app-card-body h3{font-size:12px}
.footer .footer-brand strong{font-family:'Cairo',sans-serif}
.play-announcement .lucide{width:18px;height:18px}
html[data-theme='dark'] .rating-picker span{background:#232a32;color:#adb5be;border-color:#353e48}
html[data-theme='dark'] .rating-picker input:checked+span{background:#263f5e;color:#8ab4f8;border-color:#385879}
html[data-theme='dark'] .app-card-horizontal .app-card-body h3{color:#f1f3f6}
html[data-theme='dark'] .app-card-horizontal .app-card-body p{color:#adb5be}
@media(max-width:720px){.header-actions{gap:4px}.theme-toggle{height:36px;width:36px}.play-search-overlay{z-index:4}}

/* Shared backoffice + installation styling (independent of storefront CSS). */
.admin-php,.setup-page{--a-bg:#f7f9fc;--a-card:#fff;--a-text:#222830;--a-muted:#758190;--a-border:#e4e9ef;--a-soft:#f0f4fa;--a-blue:#1a73e8;--a-blue-strong:#155fbf;--a-blue-soft:#e8f0fe;margin:0;background:var(--a-bg);color:var(--a-text);font-family:'Cairo',Arial,sans-serif;font-size:13px;line-height:1.7}
html[data-theme='dark'] .admin-php,html[data-theme='dark'] .setup-page{--a-bg:#111418;--a-card:#1b2026;--a-text:#f1f3f6;--a-muted:#adb5be;--a-border:#353e48;--a-soft:#232a32;--a-blue:#8ab4f8;--a-blue-strong:#669df6;--a-blue-soft:#263f5e;color-scheme:dark}
.admin-php *,.setup-page *{box-sizing:border-box}
.admin-php a,.setup-page a{text-decoration:none;color:inherit}
.admin-php button,.admin-php input,.admin-php select,.admin-php textarea,.setup-page button,.setup-page input{font:inherit}
.admin-php .btn,.setup-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#1a73e8;color:#fff;border:1px solid #1a73e8;border-radius:10px;padding:11px 20px;cursor:pointer;font-size:12px;font-weight:800;min-height:43px}
.admin-php .btn:hover,.setup-page .btn:hover{background:#155fbf}
.admin-php .btn:disabled,.setup-page .btn:disabled{opacity:.5;cursor:default}
.admin-php .btn .lucide{width:16px;height:16px}
.admin-php input:not([type=checkbox]):not([type=radio]):not([type=file]),.admin-php select,.admin-php textarea,.setup-page input{background:var(--a-card);color:var(--a-text);border:1px solid var(--a-border);border-radius:9px;padding:10px 12px;min-width:0;outline:none;width:100%}
.admin-php input:focus,.admin-php textarea:focus,.admin-php select:focus,.setup-page input:focus{border-color:#8ab4f8;box-shadow:0 0 0 3px #a9c8fb35}
.admin-php label,.setup-page label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:12px;color:var(--a-muted)}
.admin-php textarea{resize:vertical}
.admin-php input[type=file]{padding:10px;border:1px dashed var(--a-border);border-radius:9px;width:100%;background:var(--a-soft);color:var(--a-muted);font-size:11px}
.admin-php .theme-toggle{color:var(--a-muted);background:transparent;border:0;cursor:pointer;width:38px;height:38px;display:inline-grid;place-items:center;border-radius:50%}
.admin-php .theme-toggle:hover{background:var(--a-soft);color:var(--a-blue)}
.admin-php .theme-toggle .lucide{width:20px;height:20px}
.admin-php .message,.setup-page .message{padding:13px 16px;border-radius:10px;margin-bottom:18px;background:var(--a-blue-soft);color:var(--a-blue);border:1px solid var(--a-border)}
.admin-php .message.error,.setup-page .message.error{background:#fff0ed;color:#b43435;border-color:#f5c4c1}
html[data-theme='dark'] .admin-php .message.error,html[data-theme='dark'] .setup-page .message.error{background:#482b2e;color:#ffb0a9;border-color:#70414a}
.admin-php-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}
.admin-php-sidebar{position:sticky;top:0;height:100vh;background:var(--a-card);border-left:1px solid var(--a-border);display:flex;flex-direction:column;padding:26px 14px}
.admin-php-brand{display:flex;align-items:center;gap:11px;padding:4px 12px 27px;min-width:0}
.admin-php-brand>span{width:42px;height:42px;background:var(--a-blue-soft);color:var(--a-blue);border-radius:12px;display:grid;place-items:center;flex-shrink:0}
.admin-php-brand b{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:148px;color:var(--a-text)}
.admin-php-brand small{display:block;color:var(--a-muted);font-size:10px}
.admin-php-label{color:var(--a-muted);font-size:10px;padding:0 14px;font-weight:800}
.admin-php-sidebar nav{display:flex;flex-direction:column;gap:5px}
.admin-php-sidebar nav a,.admin-php-sidebar-bottom a,.admin-php-sidebar-bottom button{display:flex;align-items:center;gap:12px;width:100%;border:0;border-radius:9px;background:transparent;color:var(--a-muted);padding:12px 14px;text-align:right;font-weight:700;font-size:12px;cursor:pointer}
.admin-php-sidebar nav a.active,.admin-php-sidebar nav a:hover{background:var(--a-blue-soft);color:var(--a-blue)}
.admin-php-sidebar .lucide{height:18px;width:18px}
.admin-php-sidebar-bottom{margin-top:auto;border-top:1px solid var(--a-border);padding-top:12px}
.admin-php-body{min-width:0}
.admin-php-topbar{height:73px;display:flex;align-items:center;justify-content:space-between;padding:0 31px;border-bottom:1px solid var(--a-border);background:var(--a-card)}
.admin-php-topbar>div{display:flex;align-items:center;gap:13px}
.admin-php-preview{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--a-border);border-radius:9px;padding:7px 12px;color:var(--a-blue)!important;font-size:11px;font-weight:800}
.admin-php-preview .lucide{height:15px;width:15px}
.admin-avatar{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:var(--a-blue-soft);color:var(--a-blue);font-weight:900}
.admin-php-main{max-width:1300px;margin:auto;padding:34px 30px 70px}
.admin-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:26px}
.admin-title h1{font-size:23px;font-weight:900;margin:2px 0;color:var(--a-text)}
.admin-title p{color:var(--a-muted);margin:0;font-size:12px}
.admin-title .mini-label{font-size:10px;font-weight:800;color:var(--a-blue)}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:25px}
.stat-card{background:var(--a-card);border:1px solid var(--a-border);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:4px}
.stat-card .stat-icon{background:var(--a-blue-soft);color:var(--a-blue);width:39px;height:39px;display:grid;place-items:center;border-radius:11px;margin-bottom:7px}
.stat-card small{color:var(--a-muted);font-size:11px}.stat-card strong{font:800 29px 'Plus Jakarta Sans','Cairo',sans-serif}
.admin-box{background:var(--a-card);border:1px solid var(--a-border);border-radius:15px;padding:23px;margin-bottom:21px;min-width:0}
.admin-box h2{font-size:16px;margin:0 0 18px;color:var(--a-text)}
.admin-box h3{font-size:14px;color:var(--a-blue);margin:27px 0 16px;padding-top:14px;border-top:1px solid var(--a-border)}
.admin-rows{display:flex;flex-direction:column}.admin-row{display:flex;align-items:center;gap:13px;padding:12px 0;border-bottom:1px solid var(--a-border)}.admin-row:last-child{border:0}
.admin-php .app-icon{height:49px;width:49px;border-radius:12px;background:linear-gradient(145deg,#3156b5,#586ad6);color:#fff;display:grid;place-items:center;position:relative;overflow:hidden;flex-shrink:0}
.admin-php .app-icon-wasage{background:linear-gradient(145deg,#265aa6,#458ef4)}
.admin-php .app-icon-other{background:linear-gradient(145deg,#517e9b,#173c72)}
.admin-php .app-icon b{font:800 24px 'Plus Jakarta Sans','Cairo',sans-serif;position:relative;z-index:1}
.admin-php .app-icon img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;z-index:2}
.admin-php .icon-orb{position:absolute;height:75%;width:75%;border:1px solid #ffffff30;border-radius:50%;transform:translate(20%,-20%)}
.admin-row .app-icon{width:49px;height:49px;flex-shrink:0}.admin-row>span{display:flex;flex-direction:column;flex:1}.admin-row small{font-size:10px;color:var(--a-muted)}.admin-row>a{color:var(--a-blue);font-weight:800}
.status{font-style:normal;font-size:10px;font-weight:800;background:var(--a-soft);color:var(--a-muted);padding:5px 9px;border-radius:99px;white-space:nowrap}
.status.published{background:var(--a-blue-soft);color:var(--a-blue)}.status.draft{background:#fff3d8;color:#996b15}
.admin-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.admin-section-head h2{margin:0}
.subtle-link{color:var(--a-blue)!important;font-weight:800;font-size:12px}
.table-search{max-width:260px}
.admin-table-wrap{overflow-x:auto}.admin-table-wrap table{width:100%;border-collapse:collapse;text-align:right;white-space:nowrap;min-width:660px}
.admin-table-wrap th{font-size:10px;color:var(--a-muted);background:var(--a-soft);padding:13px}
.admin-table-wrap td{border-bottom:1px solid var(--a-border);padding:12px;color:var(--a-muted);font-size:11px}
.table-app{display:flex;align-items:center;gap:9px}.table-app .app-icon{width:43px;height:43px;flex-shrink:0}.table-app b{display:block;color:var(--a-text)}.table-app small{display:block;color:var(--a-muted);font-size:10px}
.table-actions{display:flex;align-items:center;gap:8px}.table-actions>a{color:var(--a-blue)!important;font-weight:800}.table-actions button{background:none;border:0;color:#ba5858;cursor:pointer}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid .full{grid-column:1/-1}
.editor-form{max-width:980px}.editor-form .form-grid{margin-bottom:20px}
.image-preview{display:block;max-height:120px;max-width:160px;object-fit:contain;border-radius:12px;border:1px solid var(--a-border);margin:6px 0}
.upload-label{margin:20px 0}.screenshot-picks{display:flex;gap:12px;flex-wrap:wrap;margin:15px 0}
.screenshot-picks label{width:110px;border:1px solid var(--a-border);border-radius:12px;padding:7px;font-size:10px}.screenshot-picks img{width:100%;height:100px;object-fit:cover;border-radius:7px}
.screenshot-picks label span{display:flex;align-items:center;gap:6px}
.checkline{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:7px;margin:11px 22px 10px 0;font-size:11px}
.editor-actions{display:flex;align-items:center;gap:20px;margin-top:27px;border-top:1px solid var(--a-border);padding-top:23px}
.category-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.category-editor{padding:16px;border:1px solid var(--a-border);border-radius:13px}
.category-editor .form-grid{gap:10px}.category-editor button{margin-top:8px}.danger-outline{border:1px solid #eea4a4;background:transparent;color:#b94d4d;padding:8px 13px;border-radius:9px;cursor:pointer}
.review-tabs{display:flex;gap:8px;margin-bottom:19px;flex-wrap:wrap}.review-tabs button{border:1px solid var(--a-border);background:var(--a-card);color:var(--a-muted);border-radius:20px;padding:8px 15px;cursor:pointer}.review-tabs button.active{color:var(--a-blue);background:var(--a-blue-soft);border-color:transparent}
.admin-review{padding:20px 0;border-bottom:1px solid var(--a-border)}.admin-review:last-child{border-bottom:0}.admin-review-head{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.admin-review-head span,.admin-review-head time{color:var(--a-muted);font-size:11px}.admin-review-head time{margin-right:auto}.admin-review>p{font-size:12px;margin:8px 0 14px;color:var(--a-text)}
.review-actions{display:flex;gap:8px;flex-wrap:wrap}.review-actions button{border:0;border-radius:8px;background:var(--a-blue-soft);color:var(--a-blue);padding:8px 12px;cursor:pointer;font-size:11px;font-weight:800}.review-actions button:nth-of-type(2){background:#fff0ec;color:#b95252}.empty-hint{text-align:center;color:var(--a-muted);padding:30px}
.settings-box{max-width:780px}.settings-box .btn{margin-top:14px}
.admin-login-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:30px;background:radial-gradient(ellipse at 24% 0,#e8f0fe,var(--a-bg) 53%);position:relative}
html[data-theme='dark'] .admin-login-screen{background:radial-gradient(ellipse at 24% 0,#263f5e,var(--a-bg) 53%)}
.admin-login-screen .admin-back{position:absolute;right:30px;top:24px;color:var(--a-blue);font-size:12px;font-weight:800}
.admin-login-screen .admin-login-theme{position:absolute;left:30px;top:18px;background:var(--a-card);border:1px solid var(--a-border)}
.admin-login-box{background:var(--a-card);border:1px solid var(--a-border);border-radius:20px;padding:35px;width:min(430px,100%);box-shadow:0 20px 60px #202b3610;text-align:center}
.admin-login-icon{width:55px;height:55px;margin:0 auto 17px;display:grid;place-items:center;background:#1a73e8;color:#fff;border-radius:16px}
.admin-login-box h1{font-size:24px;color:var(--a-text);margin:4px 0}.admin-login-box p,.admin-login-box small{color:var(--a-muted)}
.admin-login-box form{display:flex;flex-direction:column;gap:18px;text-align:right;margin-top:27px}.admin-login-box .btn{width:100%}
.setup-page{min-height:100vh;padding:35px 16px;display:flex;justify-content:center;align-items:flex-start}
.setup-card{width:min(720px,100%);background:var(--a-card);padding:30px;border:1px solid var(--a-border);border-radius:22px}
.setup-mark{font-size:42px;color:var(--a-blue);font-weight:900}.setup-card h1{font-size:26px;margin:0}.setup-card p{color:var(--a-muted)}
.setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:25px 0}.setup-grid .full{grid-column:1/-1}.setup-tip{font-size:12px}
@media(max-width:1000px){.admin-php-shell{grid-template-columns:210px minmax(0,1fr)}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.admin-php-shell{display:block}.admin-php-sidebar{position:relative;height:auto;border-left:0;border-bottom:1px solid var(--a-border);padding:12px}.admin-php-brand{padding:5px 10px}.admin-php-label,.admin-php-sidebar-bottom{display:none}.admin-php-sidebar nav{flex-direction:row;overflow-x:auto;white-space:nowrap}.admin-php-sidebar nav a{width:auto;flex-shrink:0;padding:8px 11px;gap:7px}.admin-php-sidebar nav .lucide{width:16px;height:16px}.admin-php-topbar{height:59px;padding:0 17px}.admin-php-main{padding:22px 14px 50px}.admin-title h1{font-size:19px}.admin-php-preview{display:none}.admin-box{padding:16px}.category-admin-grid{grid-template-columns:1fr}}
@media(max-width:520px){.stat-grid{gap:10px}.stat-card{padding:15px}.stat-card strong{font-size:22px}.admin-title{align-items:flex-start}.admin-title .btn{font-size:10px;padding:8px;white-space:nowrap}.form-grid,.setup-grid{grid-template-columns:1fr}.form-grid .full,.setup-grid .full{grid-column:auto}.admin-section-head{flex-wrap:wrap}.table-search{max-width:100%}.setup-card{padding:20px}}
