:root{
  --green-950:#04351f;--green-900:#064727;--green-800:#075b31;--green-700:#087440;
  --green-600:#0a8b4d;--green-500:#11a45d;--green-100:#eaf7f0;--green-50:#f4fbf7;
  --ink:#18251f;--muted:#6c7a73;--line:#e4ece8;--surface:#fff;--bg:#f5f8f6;
  --shadow:0 10px 30px rgba(13,55,34,.07);--radius:18px;
}
*{box-sizing:border-box}html,body{min-height:100%}body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink);margin:0;font-size:14px}a{text-decoration:none}.app-shell{min-height:100vh}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1020;display:flex;align-items:center;padding:0 24px 0 300px;transition:.25s}.topbar-title{font-weight:800;font-size:16px}.topbar-sub{font-size:12px;color:var(--muted)}.topbar-right{margin-left:auto;display:flex;gap:12px;align-items:center}.clock-pill{border:1px solid var(--line);border-radius:12px;padding:8px 12px;background:#fafcfb;color:var(--green-900);font-weight:700;white-space:nowrap}.user-chip{display:flex;gap:10px;align-items:center;border-left:1px solid var(--line);padding-left:14px}.avatar{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,var(--green-700),var(--green-900));color:#fff;display:grid;place-items:center;font-weight:800}.user-name{font-weight:800;line-height:1.15}.user-role{font-size:11px;text-transform:capitalize;color:var(--muted)}
.sidebar{position:fixed;inset:0 auto 0 0;width:276px;background:linear-gradient(180deg,#064727 0%,#04361f 100%);color:#fff;z-index:1030;padding:22px 16px;display:flex;flex-direction:column;box-shadow:8px 0 28px rgba(0,0,0,.08)}.brand{display:flex;align-items:center;gap:12px;padding:2px 10px 22px;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:18px}.brand-logo{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:14px;padding:5px}.brand-title{font-size:19px;font-weight:900;letter-spacing:.2px}.brand-sub{font-size:11px;color:rgba(255,255,255,.72);line-height:1.35}.nav-section{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,.47);padding:8px 12px 7px;font-weight:800}.side-nav{display:flex;flex-direction:column;gap:4px}.side-link{color:rgba(255,255,255,.82);display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:12px;font-weight:650;transition:.2s}.side-link i{font-size:18px;width:22px}.side-link:hover,.side-link.active{color:#fff;background:rgba(255,255,255,.13)}.side-link.active{box-shadow:inset 3px 0 0 #9ae6b4}.sidebar-bottom{margin-top:auto}.storage-mini{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px;margin:8px 4px 12px}.storage-mini .small{color:rgba(255,255,255,.65)}.logout-link{color:#ffd3d3!important}
.content{margin-left:276px;padding:28px;min-height:calc(100vh - 72px)}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}.page-title{font-size:27px;line-height:1.1;font-weight:900;margin:0}.page-subtitle{color:var(--muted);margin-top:6px}.btn-brand{background:linear-gradient(135deg,var(--green-700),var(--green-900));color:#fff;border:0;border-radius:11px;padding:.65rem 1rem;font-weight:750;box-shadow:0 7px 18px rgba(6,71,39,.16)}.btn-brand:hover{color:#fff;filter:brightness(1.05)}.btn-soft{background:var(--green-50);border:1px solid #d7ecdf;color:var(--green-800);border-radius:11px;font-weight:700}.card-ui{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card-ui .card-header-ui{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.card-ui .card-body-ui{padding:20px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px;box-shadow:0 7px 22px rgba(11,58,35,.05);position:relative;overflow:hidden}.stat-card::after{content:"";position:absolute;width:95px;height:95px;border-radius:50%;right:-34px;bottom:-42px;background:var(--green-50)}.stat-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:var(--green-100);color:var(--green-800);font-size:20px}.stat-label{color:var(--muted);font-size:12px;font-weight:700;margin-top:15px}.stat-value{font-size:30px;font-weight:900;line-height:1.1;margin-top:4px}.stat-note{font-size:11px;color:var(--green-700);font-weight:700;margin-top:7px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);gap:20px}.section-title{font-weight:900;font-size:16px;margin:0}.section-kicker{font-size:12px;color:var(--muted)}.storage-box{padding:19px}.storage-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px dashed var(--line)}.storage-row:last-child{border:0}.storage-icon{width:42px;height:42px;border-radius:12px;background:var(--green-50);display:grid;place-items:center;color:var(--green-700);font-size:20px}.storage-number{font-size:20px;font-weight:900}.mini-bars{display:flex;align-items:end;gap:8px;height:155px;padding:20px 4px 4px}.mini-bar{flex:1;min-width:20px;background:linear-gradient(180deg,var(--green-500),var(--green-800));border-radius:7px 7px 2px 2px;position:relative}.mini-bar span{position:absolute;bottom:-24px;left:50%;transform:translateX(-50%);font-size:10px;color:var(--muted);white-space:nowrap}.table-ui{margin:0}.table-ui thead th{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#75817b;background:#fafcfb;border-bottom:1px solid var(--line);padding:12px 14px;white-space:nowrap}.table-ui tbody td{padding:13px 14px;border-color:#edf2ef;vertical-align:middle}.table-ui tbody tr:hover{background:#fbfdfc}.code-link{font-weight:850;color:var(--green-800)}.badge-soft{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750;background:var(--green-50);color:var(--green-800);border:1px solid #dcefe4}.badge-gray{background:#f3f5f4;color:#58625d;border-color:#e6eae8}.search-box{position:relative}.search-box i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#8c9992}.search-box input{padding-left:39px;border-radius:12px;border-color:var(--line);height:43px}.form-label{font-size:12px;font-weight:800;color:#53615a;margin-bottom:7px}.form-control,.form-select{border-color:#dfe8e3;border-radius:11px;min-height:43px}.form-control:focus,.form-select:focus{border-color:#75b894;box-shadow:0 0 0 .2rem rgba(10,139,77,.1)}.form-section{padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.form-section:last-child{border:0;margin-bottom:0;padding-bottom:0}.form-section-title{font-size:14px;font-weight:900;margin-bottom:14px;display:flex;align-items:center;gap:8px}.action-btn{width:35px;height:35px;border-radius:10px;display:inline-grid;place-items:center;border:1px solid var(--line);background:#fff;color:var(--green-800)}.action-btn:hover{background:var(--green-50)}.alert{border-radius:13px;border:0;box-shadow:0 5px 15px rgba(0,0,0,.03)}.empty-state{text-align:center;padding:42px 20px;color:var(--muted)}.empty-state i{font-size:42px;color:#b3c8bc}.mobile-menu{display:none;border:0;background:var(--green-50);color:var(--green-800);width:40px;height:40px;border-radius:11px}.sidebar-backdrop{display:none}
/* login */
.login-body{background:radial-gradient(circle at 15% 10%,#effbf4 0,#f7fbf8 35%,#f4f7f5 100%);min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-visual{position:relative;padding:54px 7vw;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.login-visual:before{content:"";position:absolute;width:540px;height:540px;border-radius:50%;background:rgba(19,142,80,.07);left:-230px;bottom:-240px}.login-brand{display:flex;align-items:center;gap:12px;position:absolute;top:34px;left:6vw}.login-brand img{width:55px;height:55px;object-fit:contain}.login-brand strong{font-size:22px;color:var(--green-900)}.login-brand span{display:block;font-size:11px;color:var(--muted)}.login-copy{max-width:620px;position:relative}.login-copy h1{font-size:48px;font-weight:950;letter-spacing:-1.5px;line-height:1.08}.login-copy h1 span{color:var(--green-700)}.login-copy p{font-size:17px;color:#64726b;line-height:1.7;max-width:560px}.login-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px;max-width:560px}.login-feature{background:rgba(255,255,255,.72);border:1px solid #e1ede6;border-radius:14px;padding:13px;display:flex;gap:10px;align-items:center;font-weight:700}.login-feature i{color:var(--green-700);font-size:20px}.login-panel{background:linear-gradient(150deg,var(--green-900),#03351e);display:grid;place-items:center;padding:40px;position:relative}.phone-login{width:min(390px,100%);background:#fff;border-radius:31px;padding:12px;box-shadow:0 30px 70px rgba(0,0,0,.28);border:7px solid #173028}.phone-screen{border-radius:22px;background:#fff;overflow:hidden;min-height:610px;position:relative}.phone-status{height:37px;display:flex;align-items:center;justify-content:space-between;padding:0 17px;font-size:11px;font-weight:800;color:#405047}.phone-hero{background:linear-gradient(145deg,#eaf8f0,#f8fcfa);padding:24px 28px 30px;text-align:center;border-bottom:1px solid var(--line)}.phone-hero img{width:70px;height:70px;object-fit:contain}.phone-hero h2{font-size:22px;font-weight:950;color:var(--green-900);margin:10px 0 2px}.phone-hero p{font-size:12px;color:var(--muted);margin:0}.login-form{padding:29px 27px}.login-form h3{font-weight:900;font-size:20px;margin-bottom:4px}.login-form .hint{font-size:12px;color:var(--muted);margin-bottom:20px}.input-icon{position:relative}.input-icon i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#829189}.input-icon .form-control{padding-left:42px;height:47px}.password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#829189}.login-foot{text-align:center;color:#839089;font-size:11px;margin-top:20px}
/* public share */.public-shell{min-height:100vh;background:linear-gradient(180deg,#f1faf5,#f7f9f8);padding:38px 18px}.public-card{max-width:760px;margin:40px auto;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);overflow:hidden}.public-head{background:linear-gradient(135deg,var(--green-800),var(--green-950));padding:27px;color:#fff}.public-body{padding:28px}.document-icon{width:60px;height:60px;border-radius:17px;background:#eaf7f0;color:var(--green-800);display:grid;place-items:center;font-size:29px}
@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.login-copy h1{font-size:39px}}
@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:translateX(0)}.sidebar-backdrop.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.38);z-index:1025}.topbar{padding:0 16px}.content{margin-left:0;padding:20px 16px}.mobile-menu{display:grid;place-items:center;margin-right:12px}.clock-pill{display:none}.login-body{grid-template-columns:1fr}.login-visual{display:none}.login-panel{min-height:100vh;padding:24px}.phone-login{max-width:390px}}
@media(max-width:600px){.stat-grid{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.topbar-sub,.user-role{display:none}.user-name{font-size:12px}.content{padding:18px 12px}.phone-login{border-width:5px}.phone-screen{min-height:580px}.login-form{padding:24px 20px}.dashboard-grid{gap:14px}}

/* Arsip tabs - v4 */
.archive-tabs-wrap{background:#fff;border:1px solid #e6eee9;border-radius:16px;padding:8px;box-shadow:0 8px 24px rgba(18,69,45,.05);overflow:hidden}
.archive-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px;scrollbar-width:thin}
.archive-tabs::-webkit-scrollbar{height:6px}.archive-tabs::-webkit-scrollbar-thumb{background:#d8e5dd;border-radius:99px}
.archive-tab{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;text-decoration:none;color:#52615a;background:#f6f8f7;border:1px solid transparent;border-radius:11px;padding:9px 12px;font-size:.88rem;font-weight:700;transition:.18s ease}
.archive-tab:hover{color:#0f6a43;background:#edf7f1;border-color:#d7eadf}
.archive-tab.active{color:#fff;background:linear-gradient(135deg,#0f6a43,#168f5c);box-shadow:0 6px 16px rgba(15,106,67,.2)}
.archive-tab-count{min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.72);color:#426154;font-size:.72rem}
.archive-tab.active .archive-tab-count{background:rgba(255,255,255,.18);color:#fff}

/* === Visual refinement v5 === */
.app-shell{min-height:100vh;display:flex;flex-direction:column}.content{display:flex;flex-direction:column}.content-inner{flex:1;width:100%}
.brand{position:relative;padding:4px 10px 20px}.brand-logo{width:56px;height:56px;background:transparent!important;border-radius:0!important;padding:0!important;filter:drop-shadow(0 5px 10px rgba(0,0,0,.14));object-fit:contain}.brand-title{font-size:18px}.brand-sub{max-width:145px}
.side-nav{position:relative;padding-left:11px;margin-left:3px;gap:3px}.side-nav::before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:1px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.34),rgba(255,255,255,.08))}.side-link{position:relative;padding-left:18px}.side-link::before{content:"";position:absolute;left:-9px;top:50%;width:7px;height:7px;border-radius:50%;transform:translateY(-50%);background:#678474;border:2px solid #0a4a2d;box-shadow:0 0 0 1px rgba(255,255,255,.05);transition:.2s}.side-link:hover::before{background:#8ed6ad}.side-link.active::before{width:9px;height:9px;background:#c8f7db;box-shadow:0 0 0 4px rgba(200,247,219,.12)}.side-link.active{box-shadow:none;background:linear-gradient(90deg,rgba(255,255,255,.15),rgba(255,255,255,.07));border-left:0}.side-link.active::after{content:"";position:absolute;left:-15px;top:8px;bottom:8px;width:3px;border-radius:999px;background:#baf0cf}
.sidebar-bottom{padding-top:14px;position:relative}.sidebar-bottom::before{content:"";position:absolute;left:8px;right:8px;top:3px;height:1px;background:rgba(255,255,255,.1)}
.topbar{box-shadow:0 4px 18px rgba(26,70,47,.035)}.content{padding-bottom:0;background:linear-gradient(180deg,#f6f9f7 0,#f3f7f5 100%)}
.app-footer{margin:28px -28px 0;padding:16px 28px;background:#fff;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;color:#74817a;font-size:12px;box-shadow:0 -4px 18px rgba(21,65,43,.025)}.footer-left,.footer-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.footer-brand{font-weight:850;color:var(--green-800)}.footer-separator{width:1px;height:15px;background:#dbe4df}.footer-right i{color:var(--green-700)}.footer-dot{color:#b3beb8}
.card-ui,.stat-card,.archive-tabs-wrap{box-shadow:0 8px 24px rgba(17,65,42,.045)}.card-ui:hover,.stat-card:hover{border-color:#d9e7df}.page-title{letter-spacing:-.4px}
@media(max-width:900px){.app-footer{margin:24px -16px 0;padding:15px 16px}.brand-logo{width:52px;height:52px}}
@media(max-width:600px){.app-footer{margin:22px -12px 0;padding:14px 12px;align-items:flex-start;flex-direction:column;gap:8px}.footer-right{gap:6px}.sidebar{width:270px}}

/* === v6 professional login & settings === */
.settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px}.setting-preview{margin-top:12px;width:90px;height:90px;border:1px solid var(--line);border-radius:14px;background:#f8fbf9;display:grid;place-items:center;padding:8px}.setting-preview img{max-width:100%;max-height:100%;object-fit:contain}.setting-preview.favicon{width:64px;height:64px}.storage-title{font-weight:900;color:var(--green-900);display:flex;align-items:center;gap:8px;margin-bottom:14px}.storage-title i{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--green-100);color:var(--green-800)}
.login-pro-wrap{min-height:100vh;background:linear-gradient(135deg,#eaf4ee,#f7faf8);display:grid;place-items:center;padding:28px}.login-pro-shell{width:min(1120px,100%);min-height:650px;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 28px 80px rgba(8,52,31,.18);display:grid;grid-template-columns:1.05fr .95fr;border:1px solid rgba(8,92,51,.08)}.login-pro-brand{position:relative;background:linear-gradient(145deg,#064727,#0a7242);color:#fff;padding:58px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.login-pro-brand:before,.login-pro-brand:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.055)}.login-pro-brand:before{width:420px;height:420px;right:-190px;top:-170px}.login-pro-brand:after{width:300px;height:300px;left:-150px;bottom:-110px}.login-pro-content{position:relative;z-index:2;max-width:520px}.login-pro-logo{width:92px;height:92px;display:grid;place-items:center;margin-bottom:32px}.login-pro-logo img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(0,0,0,.16))}.login-kicker{font-size:11px;font-weight:850;letter-spacing:1.6px;color:#bfe8cf;margin-bottom:12px}.login-pro-content h1{font-size:46px;line-height:1.05;font-weight:950;letter-spacing:-1.5px;margin:0 0 15px}.login-pro-content p{font-size:18px;color:rgba(255,255,255,.8);margin-bottom:28px}.login-pro-points{display:flex;flex-direction:column;gap:11px}.login-pro-points span{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.88);font-weight:650}.login-pro-points i{width:31px;height:31px;border-radius:9px;background:rgba(255,255,255,.12);display:grid;place-items:center}.login-pro-bottom{position:absolute;left:58px;bottom:34px;font-size:12px;color:rgba(255,255,255,.55);z-index:2}.login-pro-form-side{padding:60px;display:flex;flex-direction:column;justify-content:center;position:relative}.login-pro-formbox{width:min(410px,100%);margin:auto}.login-form-head{margin-bottom:28px}.secure-badge{display:inline-flex;align-items:center;gap:7px;background:var(--green-50);color:var(--green-800);border:1px solid #d7eadf;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800;margin-bottom:18px}.login-form-head h2{font-size:32px;font-weight:950;letter-spacing:-.7px;margin-bottom:7px}.login-form-head p{color:var(--muted);margin:0}.login-input{height:52px!important;background:#fbfdfc}.login-submit{height:52px;font-size:15px}.login-support{text-align:center;color:#849089;font-size:11px;margin-top:18px}.login-copyright{position:absolute;bottom:26px;left:0;right:0;text-align:center;color:#98a29d;font-size:11px}
@media(max-width:1000px){.settings-grid{grid-template-columns:1fr}.login-pro-shell{grid-template-columns:1fr;max-width:560px}.login-pro-brand{display:none}.login-pro-form-side{min-height:650px;padding:44px 32px}}
@media(max-width:600px){.login-pro-wrap{padding:0;background:#fff}.login-pro-shell{min-height:100vh;border-radius:0;border:0;box-shadow:none}.login-pro-form-side{padding:34px 22px}.login-form-head h2{font-size:28px}}
/* v7 paging + admin utilities */
.paging-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-top:1px solid #e8eef0;background:#fbfdfc}.paging-info{font-size:.82rem;color:#70807a}.pagination .page-link{border:0;border-radius:9px!important;margin:0 2px;color:#176247;background:#eef7f2;min-width:34px;text-align:center}.pagination .page-item.active .page-link{background:#0b7a52;color:#fff}.pagination .page-item.disabled .page-link{opacity:.45}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.filter-bar .form-control,.filter-bar .form-select{min-height:42px}.metric-card{background:#fff;border:1px solid #e6eeea;border-radius:18px;padding:18px;box-shadow:0 8px 24px rgba(14,70,51,.06)}.metric-label{font-size:.82rem;color:#718078}.metric-value{font-size:1.7rem;font-weight:800;color:#17362d}.metric-sub{font-size:.78rem;color:#8a9994}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#16a36d;margin-right:6px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.danger-box{background:#fff7f7;border:1px solid #f5dada;border-radius:16px;padding:16px}.user-chip{color:inherit}@media(max-width:900px){.profile-grid{grid-template-columns:1fr}.paging-wrap{align-items:flex-start;flex-direction:column}}
.system-tabs{gap:8px}.system-tabs .nav-link{border-radius:11px;color:#587067;font-weight:750;padding:10px 16px}.system-tabs .nav-link.active{background:#0b7a52;color:#fff;box-shadow:0 5px 14px rgba(11,122,82,.18)}.compact-head{margin-top:4px}.paging-wrap{min-height:62px}.pagination .page-link{display:flex;align-items:center;justify-content:center}.phone-login{box-shadow:0 34px 80px rgba(0,0,0,.34)}.phone-screen:before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:82px;height:22px;border-radius:20px;background:#173028;z-index:3}.phone-status{padding-top:3px}.login-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 20%,rgba(52,211,153,.15),transparent 35%);pointer-events:none}

/* === v9 visible navigation ruler === */
.side-nav{position:relative;margin-left:10px;padding-left:20px;gap:6px}
.side-nav::before{content:"";position:absolute;left:4px;top:7px;bottom:7px;width:2px;border-radius:999px;background:rgba(214,255,229,.48);box-shadow:0 0 10px rgba(190,255,215,.12)}
.side-link{position:relative;padding-left:14px}
.side-link::before{content:"";position:absolute;left:-20px;top:50%;transform:translateY(-50%);width:10px;height:10px;border-radius:50%;background:#5f8f74;border:2px solid #d6ffe5;box-shadow:0 0 0 3px #064727;z-index:2}
.side-link:hover::before{background:#baf0cf}
.side-link.active::before{width:12px;height:12px;background:#d9ffe7;border-color:#fff;box-shadow:0 0 0 4px rgba(217,255,231,.18),0 0 12px rgba(217,255,231,.35)}
.side-link.active::after{content:"";position:absolute;left:-29px;top:7px;bottom:7px;width:4px;border-radius:999px;background:#e4ffed;box-shadow:0 0 8px rgba(228,255,237,.4)}
.settings-tabs{gap:8px;flex-wrap:wrap}.settings-tabs .nav-link{border-radius:12px;color:#537064;font-weight:800;padding:10px 15px;background:#f3f8f5;border:1px solid #e1ece5}.settings-tabs .nav-link.active{background:#0b7a52;color:#fff;border-color:#0b7a52;box-shadow:0 6px 16px rgba(11,122,82,.18)}

/* === v14 login mockup + Google Drive account switch === */
.login-v14 .login-panel{overflow:hidden;background:linear-gradient(150deg,#063b24 0%,#07562f 52%,#04351f 100%)}
.login-v14 .login-panel:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:rgba(255,255,255,.045);right:-130px;bottom:-120px}
.login-visual-note{position:absolute;left:7vw;bottom:34px;color:#718078;font-size:12px}
.phone-stage{position:relative;z-index:2;width:min(420px,100%);display:grid;place-items:center;padding:16px 0 26px}
.phone-shadow{position:absolute;width:310px;height:48px;bottom:4px;border-radius:50%;background:rgba(0,0,0,.28);filter:blur(18px)}
.phone-login-v14{width:min(376px,100%);padding:8px;border:1px solid rgba(255,255,255,.16);border-radius:38px;background:linear-gradient(145deg,#18231f,#07120e);box-shadow:0 34px 90px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.06);position:relative}
.phone-login-v14 .phone-screen{min-height:664px;border-radius:30px;background:linear-gradient(180deg,#f8fbf9 0,#ffffff 38%);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.phone-island{position:absolute;z-index:5;top:9px;left:50%;transform:translateX(-50%);width:96px;height:27px;border-radius:18px;background:#0a100d;box-shadow:inset 0 1px 1px rgba(255,255,255,.08)}
.phone-login-v14 .phone-screen:before{display:none}
.phone-login-v14 .phone-status{height:44px;padding:0 18px 2px;font-size:11px;color:#233b30}
.phone-status-icons{display:flex;gap:7px;align-items:center}
.phone-appbar{display:flex;gap:11px;align-items:center;padding:16px 23px 10px}
.phone-appmark{width:43px;height:43px;border-radius:14px;background:#fff;border:1px solid #e3ece7;display:grid;place-items:center;box-shadow:0 6px 18px rgba(18,70,45,.07)}
.phone-appmark img{width:32px;height:32px;object-fit:contain}
.phone-appname{font-size:13px;font-weight:900;color:var(--green-900);line-height:1.15}
.phone-appsub{font-size:10px;color:#829088;margin-top:3px}
.phone-welcome{margin:13px 22px 0;border-radius:22px;padding:18px;background:linear-gradient(145deg,#087440,#07532f);color:#fff;display:flex;gap:13px;box-shadow:0 15px 30px rgba(7,92,49,.18);position:relative;overflow:hidden}
.phone-welcome:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-45px;bottom:-65px;background:rgba(255,255,255,.08)}
.phone-welcome-icon{width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.14);display:grid;place-items:center;font-size:19px;flex:0 0 auto}
.phone-welcome-kicker{font-size:8px;font-weight:850;letter-spacing:1.35px;color:#c7f2d8;margin-bottom:4px}
.phone-welcome h2{font-size:18px;line-height:1.15;font-weight:950;margin:0 0 5px}
.phone-welcome p{font-size:10px;color:rgba(255,255,255,.78);margin:0;max-width:210px}
.login-form-v14{padding:24px 24px 18px}
.login-form-v14 .form-label{color:#385246;margin-bottom:7px}
.login-form-v14 .form-control{height:48px;border-radius:13px;border-color:#dde8e2;background:#fbfdfc;box-shadow:none}
.login-form-v14 .form-control:focus{border-color:#7fc39c;box-shadow:0 0 0 3px rgba(17,164,93,.09);background:#fff}
.login-submit-v14{height:49px;border-radius:13px;font-weight:850;box-shadow:0 10px 22px rgba(8,116,64,.18)}
.phone-security{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px;color:#7c8982;font-size:9px}
.phone-security i{color:#0a8b4d}
.phone-homebar{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);width:112px;height:4px;border-radius:99px;background:#17251f;opacity:.7}
.login-panel-caption{position:absolute;z-index:2;bottom:18px;color:rgba(255,255,255,.55);font-size:11px}
.gdrive-account-card{display:flex;align-items:center;gap:12px;border:1px solid #dfeae4;background:#f8fcfa;border-radius:15px;padding:13px}
.gdrive-account-icon{width:42px;height:42px;border-radius:13px;background:#fff;border:1px solid #e3ece7;display:grid;place-items:center;font-size:20px;color:#166b45;box-shadow:0 5px 14px rgba(12,79,48,.06)}
@media(max-width:600px){.phone-stage{padding:0}.phone-login-v14{width:min(365px,100%);border-radius:30px}.phone-login-v14 .phone-screen{min-height:630px;border-radius:24px}.phone-welcome{margin-left:18px;margin-right:18px}.login-form-v14{padding:21px 19px 18px}.login-panel-caption{display:none}}

/* === v17 professional backend sidebar === */
.sidebar-v17{width:282px;padding:18px 14px 14px;background:linear-gradient(180deg,#073f28 0%,#04331f 58%,#03291a 100%);box-shadow:12px 0 34px rgba(3,45,28,.12);border-right:1px solid rgba(255,255,255,.06)}
.brand-v17{margin:0 2px 14px;padding:8px 8px 18px;gap:12px;border-bottom:1px solid rgba(255,255,255,.11)}
.brand-logo-wrap{width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,#fff,#eef9f2);display:grid;place-items:center;box-shadow:0 8px 22px rgba(0,0,0,.15),inset 0 0 0 1px rgba(6,92,53,.08);flex:0 0 auto}
.sidebar-v17 .brand-logo{width:39px;height:39px;padding:3px;border-radius:11px;background:transparent}
.brand-copy{min-width:0}.sidebar-v17 .brand-title{font-size:15px;font-weight:900;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-v17 .brand-sub{font-size:10px;color:rgba(255,255,255,.58);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-scroll{overflow-y:auto;overflow-x:hidden;padding:2px 2px 10px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent}
.sidebar-v17 .nav-section{padding:9px 10px 7px;color:rgba(220,246,230,.46);font-size:9px;letter-spacing:1.45px;font-weight:850}
.sidebar-v17 .nav-section span{display:flex;align-items:center;gap:8px}.sidebar-v17 .nav-section span:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,rgba(255,255,255,.12),transparent)}
.sidebar-v17 .side-nav-v17{margin:0;padding:0;gap:5px}.sidebar-v17 .side-nav-v17:before{display:none}.sidebar-v17 .side-link{min-height:48px;padding:7px 10px;border-radius:14px;gap:11px;color:rgba(239,250,244,.75);font-size:13px;font-weight:720;letter-spacing:.05px}.sidebar-v17 .side-link:before,.sidebar-v17 .side-link:after{display:none}
.sidebar-v17 .side-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.065);transition:.2s;flex:0 0 auto}.sidebar-v17 .side-icon i{font-size:16px;width:auto}
.sidebar-v17 .side-link:hover{background:rgba(255,255,255,.075);transform:translateX(2px);color:#fff}.sidebar-v17 .side-link:hover .side-icon{background:rgba(255,255,255,.11)}
.sidebar-v17 .side-link.active{background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(255,255,255,.08));color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 7px 18px rgba(0,0,0,.08)}.sidebar-v17 .side-link.active .side-icon{background:#e8fff1;color:#087344;border-color:#fff;box-shadow:0 5px 14px rgba(0,0,0,.12)}
.sidebar-bottom-v17{margin-top:auto;padding-top:12px;border-top:1px solid rgba(255,255,255,.09)}
.sidebar-user{display:flex;align-items:center;gap:10px;padding:10px;border-radius:15px;color:#fff;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07);transition:.2s}.sidebar-user:hover{background:rgba(255,255,255,.09);color:#fff}.sidebar-avatar{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#bdf5d1,#e8fff1);color:#075937;display:grid;place-items:center;font-weight:900;box-shadow:0 5px 14px rgba(0,0,0,.12)}.sidebar-user-copy{min-width:0;flex:1}.sidebar-user-copy strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-copy span{display:block;font-size:10px;color:rgba(255,255,255,.55);margin-top:2px}.sidebar-user>i{font-size:12px;color:rgba(255,255,255,.42)}
.sidebar-logout{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;padding:9px;border-radius:12px;color:#ffd9d9;text-decoration:none;font-size:12px;font-weight:750;transition:.2s}.sidebar-logout:hover{background:rgba(255,84,84,.1);color:#fff}.sidebar-logout i{font-size:15px}
.action-btn-danger{border:0;background:#fff1f1;color:#bb3434}.action-btn-danger:hover{background:#ffe3e3;color:#9d2424}
@media(min-width:992px){.sidebar-v17~.sidebar-backdrop+.topbar{left:282px}.sidebar-v17~.sidebar-backdrop~.content{margin-left:282px}}
\n\n/* === v19 green gradient UI refresh + bulk archive manager === */
:root{--v19-green:#087344;--v19-green2:#0ca85f;--v19-deep:#043b25;--v19-soft:#eefaf3}
body{background:linear-gradient(135deg,#f3faf6 0%,#fbfdfc 48%,#edf8f2 100%);background-attachment:fixed}
.topbar{background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(8,115,68,.09);box-shadow:0 7px 24px rgba(4,59,37,.045)}
.content-inner{max-width:1560px}.page-title{color:#073f28;letter-spacing:-.45px}.page-subtitle{color:#718078}
.btn-brand{background:linear-gradient(135deg,#087344,#0ca85f);border:0;box-shadow:0 8px 20px rgba(8,115,68,.16)}.btn-brand:hover{background:linear-gradient(135deg,#065f38,#099451);transform:translateY(-1px)}
.card-ui{border:1px solid rgba(8,115,68,.08);box-shadow:0 10px 32px rgba(4,59,37,.055);border-radius:18px;overflow:hidden}.card-header-ui{background:linear-gradient(180deg,#fff,#fbfefc);border-bottom-color:#edf4f0}
.stat-card{border:1px solid rgba(8,115,68,.08);box-shadow:0 10px 28px rgba(4,59,37,.055);overflow:hidden}.stat-card:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#087344,#32c779)}.stat-icon{background:linear-gradient(145deg,#e8fff1,#d9f7e6);color:#087344}
.archive-tabs-wrap{background:rgba(255,255,255,.78);border:1px solid rgba(8,115,68,.08);border-radius:17px;padding:6px;box-shadow:0 7px 22px rgba(4,59,37,.04)}.archive-tab.active{background:linear-gradient(135deg,#087344,#0ca85f);color:#fff;box-shadow:0 7px 17px rgba(8,115,68,.16)}
.table-ui thead th{background:#f2faf5;color:#385448;border-bottom:1px solid #e2eee7}.table-ui tbody tr:hover{background:#f8fdf9}.form-control:focus,.form-select:focus{border-color:#70c99a;box-shadow:0 0 0 3px rgba(12,168,95,.09)}
.bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 18px;background:linear-gradient(90deg,#f2fbf6,#fbfefc);border-bottom:1px solid #e7f1eb}.bulk-info{display:flex;align-items:center;gap:9px;color:#365347;font-size:12px}.bulk-info>i{width:29px;height:29px;border-radius:9px;background:#ddf7e8;color:#087344;display:grid;place-items:center}.bulk-note{color:#829188;border-left:1px solid #dce9e1;padding-left:10px}.archive-check,.bulk-toolbar .form-check-input,#selectAllGdrive{cursor:pointer}.form-check-input:checked{background-color:#087344;border-color:#087344}
.sidebar-v17{background:linear-gradient(165deg,#064b2e 0%,#073f28 48%,#022b1a 100%)}
/* Public/frontend pages: emerald gradient only */
.login-v14{background:linear-gradient(135deg,#032f1d 0%,#075b37 45%,#0a8b4d 100%)}.login-visual{background:linear-gradient(145deg,#043b25 0%,#07633b 58%,#0a8b4d 100%)}.login-visual:before{background:radial-gradient(circle,rgba(106,239,161,.20),transparent 66%)}.login-panel{background:linear-gradient(145deg,#075633,#0a8249 56%,#06462c)}.login-copy h1 span{color:#a8f0c4}.secure-badge{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.15);color:#d8ffe7}.login-feature i{background:rgba(255,255,255,.11);color:#c9ffdc}
.public-shell{min-height:100vh;background:linear-gradient(135deg,#033821 0%,#087344 50%,#0ba35c 100%);padding:42px 18px}.public-card{border:1px solid rgba(255,255,255,.2);box-shadow:0 28px 70px rgba(1,42,24,.24);border-radius:22px;overflow:hidden}.public-head{background:linear-gradient(135deg,#075d38,#0ca85f)}.public-body{background:#fff}.public-shell>.text-center .fw-bold{color:#fff!important}.public-shell>.text-center img{background:#fff;border-radius:18px;padding:7px;box-shadow:0 10px 28px rgba(0,0,0,.16)}
@media(max-width:800px){.bulk-toolbar{align-items:flex-start;flex-direction:column}.bulk-note{display:none}.bulk-toolbar>div:last-child{width:100%}.bulk-toolbar .btn{flex:1}.topbar-sub{display:none}}
\n\n/* === v20 coherent emerald UI + captcha === */
html,body{min-height:100%;font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;color:#173b2b}
body{background:#f4faf6}
/* LOGIN FRONTEND */
.login-body.login-v14{min-height:100vh;background:linear-gradient(135deg,#03291a 0%,#075a37 42%,#0c9b58 100%)!important;color:#fff}
.login-v14 .login-visual{background:linear-gradient(145deg,rgba(2,48,29,.96),rgba(8,117,68,.94),rgba(12,155,88,.90))!important;color:#fff}
.login-v14 .login-panel{background:linear-gradient(145deg,#064a2d 0%,#087344 50%,#0ca85f 100%)!important}
.login-brand img,.phone-appmark,.brand-logo-wrap{background:transparent!important;box-shadow:none!important;border:0!important}
.login-brand img{padding:0!important;filter:drop-shadow(0 5px 12px rgba(0,0,0,.18))}
.phone-appmark{padding:0!important}.phone-appmark img{width:39px!important;height:39px!important;filter:drop-shadow(0 3px 6px rgba(4,59,37,.12))}
.login-copy,.login-copy p,.login-feature span,.login-visual-note{color:#effff5!important}.login-copy h1{color:#fff!important}.login-copy h1 span{color:#baf5cf!important}.secure-badge{color:#e8fff1!important;background:rgba(255,255,255,.10)!important}
.phone-login-v14{background:linear-gradient(145deg,#0b2619,#03130c)!important}.phone-login-v14 .phone-screen{background:linear-gradient(180deg,#f7fcf9 0%,#ffffff 60%)!important}
.phone-appname{color:#064c2e!important}.phone-appsub{color:#667c70!important}.phone-welcome{background:linear-gradient(135deg,#08663d,#0ca85f)!important}.phone-welcome h2,.phone-welcome p,.phone-welcome-kicker{color:#fff!important}
.login-form-v14 .form-label{color:#284b3a!important}.login-form-v14 .form-control{color:#163a2a!important;background:#fff!important;border-color:#d9e8df!important}.login-form-v14 .form-control::placeholder{color:#9aa9a1}
.captcha-box-v20{display:flex;align-items:end;gap:10px;padding:10px;border:1px solid #dcebe2;border-radius:14px;background:#f6fbf8}.captcha-question{height:48px;min-width:98px;border-radius:12px;background:linear-gradient(135deg,#075d38,#0ca85f);color:#fff;display:flex;align-items:center;justify-content:center;gap:5px;font-weight:900;font-size:18px;box-shadow:0 7px 16px rgba(8,115,68,.15)}.captcha-question small{font-size:12px;opacity:.8}
/* BACKEND */
.sidebar-v17{background:linear-gradient(180deg,#06472b 0%,#053922 55%,#032a1a 100%)!important}.brand-v17,.brand-logo-wrap{background:transparent!important}.sidebar-v17 .brand-logo{background:transparent!important;padding:0!important;filter:drop-shadow(0 3px 8px rgba(0,0,0,.22))}
.topbar{background:linear-gradient(90deg,rgba(255,255,255,.97),rgba(244,252,247,.97))!important}.content{background:linear-gradient(135deg,#f5fbf7 0%,#ffffff 45%,#eff9f3 100%)!important}.card-ui,.stat-card,.metric-card{background:#fff!important;color:#173b2b}.section-title,.page-title,.topbar-title{color:#073f28!important}.page-subtitle,.section-kicker,.topbar-sub,.text-muted{color:#74877d!important}.table-ui{color:#244637!important}.table-ui td{vertical-align:middle}.table-ui thead th{color:#315646!important;background:linear-gradient(180deg,#f0faf4,#eaf6ef)!important}.badge-soft{color:#09643b!important;background:#eaf8f0!important}.btn-soft{color:#0a6740!important;background:#f1faf5!important;border-color:#dcece3!important}.btn-soft:hover{background:#e4f5ec!important;color:#075934!important}
/* Public share frontend */
.public-shell{background:linear-gradient(135deg,#03291a 0%,#075f39 48%,#0ca85f 100%)!important;color:#fff}.public-card{background:#fff;color:#183a2a}.public-head{background:linear-gradient(135deg,#075a36,#0ca85f)!important;color:#fff}.public-body{color:#183a2a!important}.public-body .text-muted{color:#718078!important}
@media(max-width:991px){.login-copy h1{font-size:clamp(30px,7vw,48px)}.captcha-box-v20{align-items:stretch}.captcha-question{height:auto;min-height:48px}}


/* === v21 visibility + larger logos === */
/* Frontend brand readability */
.login-v14 .login-brand{display:flex;align-items:center;gap:18px}
.login-v14 .login-brand img{width:72px!important;height:72px!important;max-width:none!important;object-fit:contain!important;background:transparent!important;border:0!important;box-shadow:none!important;filter:drop-shadow(0 4px 10px rgba(0,0,0,.22))}
.login-v14 .login-brand strong{display:block;color:#ffffff!important;font-size:24px!important;font-weight:900!important;line-height:1.15!important;text-shadow:0 2px 8px rgba(0,0,0,.18)}
.login-v14 .login-brand span{display:block;color:#d9f8e5!important;font-size:14px!important;margin-top:6px!important;font-weight:500!important}
.login-v14 .secure-badge{color:#ffffff!important;font-weight:800!important}
.login-v14 .login-copy h1{color:#ffffff!important}
.login-v14 .login-copy h1 span{color:#bff5d2!important}
.login-v14 .login-copy p{color:#f0fff6!important}
.login-v14 .login-feature{background:rgba(255,255,255,.20)!important;border:1px solid rgba(255,255,255,.33)!important;color:#ffffff!important}
.login-v14 .login-feature span{color:#ffffff!important;font-weight:700!important;text-shadow:0 1px 4px rgba(0,0,0,.12)}
.login-v14 .login-feature i{color:#d8ffe7!important;background:rgba(255,255,255,.08)!important}
.login-v14 .login-visual-note{color:#e8fff0!important}

/* Backend logo and brand */
.sidebar-v17 .brand-v17{min-height:86px!important;align-items:center!important;gap:14px!important}
.sidebar-v17 .brand-logo-wrap{width:62px!important;height:62px!important;min-width:62px!important;background:transparent!important;border:0!important;box-shadow:none!important}
.sidebar-v17 .brand-logo{width:58px!important;height:58px!important;max-width:none!important;object-fit:contain!important;padding:0!important;background:transparent!important;filter:drop-shadow(0 4px 8px rgba(0,0,0,.22))}
.sidebar-v17 .brand-title{color:#ffffff!important;font-size:16px!important;font-weight:900!important}
.sidebar-v17 .brand-sub{color:#ccefd9!important;font-size:10.5px!important}

/* Phone logo slightly larger without white tile */
.phone-appmark{width:50px!important;height:50px!important;background:transparent!important;border:0!important;box-shadow:none!important}
.phone-appmark img{width:46px!important;height:46px!important;object-fit:contain!important}
.phone-appname{font-size:14px!important;font-weight:900!important;color:#064c2e!important}
.phone-appsub{font-size:10.5px!important;color:#5f7569!important}

@media(max-width:700px){
  .login-v14 .login-brand img{width:60px!important;height:60px!important}
  .login-v14 .login-brand strong{font-size:20px!important}
  .login-v14 .login-brand span{font-size:12px!important}
}


/* === v22 centered phone identity + professional dashboard === */
.phone-appbar-centered{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;text-align:center!important;gap:7px!important;padding:18px 20px 10px!important}
.phone-appbar-centered .phone-appmark{margin:0 auto!important;width:58px!important;height:58px!important}
.phone-appbar-centered .phone-appmark img{width:56px!important;height:56px!important}
.phone-brand-center{text-align:center!important}.phone-appbar-centered .phone-appname{font-size:16px!important;line-height:1.15!important}.phone-appbar-centered .phone-appsub{font-size:10px!important;margin-top:4px!important}
.phone-login-v14 .login-form-v14{padding-top:18px!important}

.dashboard-hero-v22{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 30px;margin-bottom:20px;border-radius:22px;background:linear-gradient(135deg,#064a2d 0%,#087344 54%,#0ca85f 100%);color:#fff;box-shadow:0 16px 38px rgba(6,90,52,.16)}
.dashboard-hero-v22:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-80px;top:-130px;background:rgba(255,255,255,.08)}
.dashboard-kicker{font-size:10px;font-weight:850;letter-spacing:1.25px;color:#c8f3d9;margin-bottom:8px}.dashboard-hero-v22 h1{font-size:27px;font-weight:900;margin:0 0 6px;letter-spacing:-.4px}.dashboard-hero-v22 p{margin:0;color:rgba(255,255,255,.76);font-size:13px}.dashboard-hero-actions{position:relative;z-index:2;display:flex;align-items:center;gap:10px}.hero-date{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:12px;background:rgba(255,255,255,.11);font-size:12px;font-weight:700}
.stat-grid-v22{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.stat-v22{display:flex;align-items:center;gap:14px;padding:18px}.stat-v22 .stat-icon{width:46px;height:46px;flex:0 0 auto}.stat-v22 .stat-value{font-size:27px;line-height:1.05;margin-top:3px}.stat-v22 .stat-label{font-size:9px}.stat-v22 .stat-note{font-size:10px;margin-top:4px}
.dashboard-main-v22{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,.8fr);gap:18px}.curve-wrap{height:320px}.chart-card-v22 .card-body-ui{padding:18px 18px 14px}.overview-list-v22{padding:8px 16px}.overview-item{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;padding:13px 5px;border-bottom:1px solid #edf4f0}.overview-item:last-child{border-bottom:0}.overview-icon{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#e8f8ef,#f5fcf8);color:#087344;display:grid;place-items:center}.overview-item strong{display:block;font-size:12px;color:#183f2d}.overview-item small{display:block;color:#819087;font-size:10px;margin-top:2px}.overview-item>b{font-size:18px;color:#075e39}.category-mini-v22{margin:6px 16px 16px;padding:13px;border-radius:14px;background:#f5faf7;border:1px solid #e7f1eb}.category-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:11px;color:#5c7166}.category-row b{color:#0a7546}
@media(max-width:1100px){.stat-grid-v22{grid-template-columns:repeat(2,1fr)}.dashboard-main-v22{grid-template-columns:1fr}.overview-card-v22{order:2}}
@media(max-width:700px){.dashboard-hero-v22{align-items:flex-start;flex-direction:column;padding:22px}.dashboard-hero-actions{width:100%;justify-content:space-between}.stat-grid-v22{grid-template-columns:1fr 1fr}.stat-v22{padding:14px}.curve-wrap{height:260px}}


/* === v23 phone gradient + professional user management === */
.phone-login-v14 .phone-screen{
  background:
    radial-gradient(circle at 82% 8%,rgba(99,220,149,.20),transparent 27%),
    radial-gradient(circle at 10% 34%,rgba(8,115,68,.10),transparent 29%),
    linear-gradient(165deg,#edf9f2 0%,#f7fcf9 38%,#e6f6ed 100%)!important;
}
.phone-appbar-centered{background:linear-gradient(180deg,rgba(221,246,231,.58),rgba(255,255,255,0))!important}
.login-form-v14{background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(238,250,243,.72))!important;margin:8px 14px 14px;border:1px solid rgba(8,115,68,.08);border-radius:20px;box-shadow:0 12px 28px rgba(5,76,45,.07);backdrop-filter:blur(8px)}
.phone-status{background:rgba(233,249,240,.38)}
.phone-homebar{background:#075b37!important}

/* User page */
.user-summary-v23{display:grid;grid-template-columns:190px 190px 1fr;gap:12px;margin-bottom:16px}
.user-summary-card{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(8,115,68,.08);border-radius:16px;background:linear-gradient(145deg,#fff,#f3fbf6);box-shadow:0 8px 22px rgba(5,76,45,.045)}
.user-summary-icon{width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#dff7e9,#edfdf4);color:#087344;display:grid;place-items:center;font-size:17px}.user-summary-card small{display:block;color:#7b8c83;font-size:9px;text-transform:uppercase;letter-spacing:.65px;font-weight:800}.user-summary-card strong{display:block;font-size:21px;color:#075e39;line-height:1.1;margin-top:2px}.user-summary-note{justify-content:flex-start;color:#60756a;font-size:11px}.user-summary-note>i{font-size:20px;color:#0a8b4d}
.user-filter-v23{display:grid!important;grid-template-columns:minmax(260px,1fr) 190px 115px auto auto;gap:9px!important}.user-filter-v23 .form-select{max-width:none!important}
.user-table-v23 td{padding-top:13px!important;padding-bottom:13px!important}.user-cell-v23{display:flex;align-items:center;gap:10px}.user-avatar-v23{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#dff8e9,#f0fcf5);color:#087344;display:grid;place-items:center;font-weight:900;border:1px solid #d8eee2;flex:0 0 auto}
.role-pill-v23,.status-pill-v23{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:9px;font-size:10px;font-weight:800;white-space:nowrap}.role-pill-v23{background:#eef8f2;color:#176443}.role-superadmin{background:#e9f2ff;color:#315d98}.role-admin{background:#f0eefc;color:#5b4d9b}.role-dosen{background:#e8f8ef;color:#087344}.role-pimpinan{background:#fff5e5;color:#8d631c}.role-operator{background:#eef7fa;color:#376878}.status-pill-v23.active{background:#e7f8ee;color:#087344}.status-pill-v23.inactive{background:#f2f3f3;color:#79827d}
.user-actions-v23{display:flex;align-items:center;justify-content:flex-end;gap:6px}.action-edit-v23{background:#edf8f2!important;color:#087344!important}.action-edit-v23:hover{background:#dff4e8!important}
.user-modal-v23{border:0!important;border-radius:22px!important;overflow:hidden;box-shadow:0 28px 75px rgba(3,51,31,.23)}.user-modal-head-v23{padding:18px 22px;background:linear-gradient(135deg,#075a36,#0ca85f);color:#fff;border:0}.user-modal-head-v23>div{display:flex;align-items:center;gap:12px}.user-modal-head-v23 .modal-title{font-weight:900;margin:0}.modal-icon-v23{width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.13);display:grid;place-items:center;font-size:18px}.form-section-label-v23{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:900;letter-spacing:.65px;text-transform:uppercase;color:#557165;margin-bottom:12px}.form-section-label-v23 i{color:#0a8b4d}.form-control-lg-v23{min-height:47px;border-radius:12px!important}.password-panel-v23{padding:14px;border:1px solid #e3eee8;border-radius:14px;background:#f7fbf9}.user-modal-footer-v23{border-top:1px solid #edf3ef;background:#fbfdfc;padding:13px 22px}
.user-edit-layout-v23{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:18px}.user-edit-hero-v23{display:flex;align-items:center;gap:14px;padding:20px 24px;color:#fff;background:linear-gradient(135deg,#06492c,#087344 55%,#0ca85f)}.user-avatar-large-v23{width:58px;height:58px;border-radius:17px;background:rgba(255,255,255,.16);display:grid;place-items:center;font-size:25px;font-weight:900;border:1px solid rgba(255,255,255,.2)}.user-edit-hero-v23 h3{font-size:18px;font-weight:900;margin:0}.user-edit-hero-v23 p{margin:2px 0 5px;color:rgba(255,255,255,.75);font-size:11px}.user-edit-hero-v23 span{font-size:9px;padding:4px 8px;border-radius:7px;background:rgba(255,255,255,.12)}.danger-zone-v23{border-color:rgba(196,71,71,.13)!important}
@media(max-width:1100px){.user-summary-v23{grid-template-columns:1fr 1fr}.user-summary-note{grid-column:1/-1}.user-filter-v23{grid-template-columns:1fr 1fr}.user-filter-v23 .search-box{grid-column:1/-1}.user-edit-layout-v23{grid-template-columns:1fr}}
@media(max-width:650px){.user-summary-v23{grid-template-columns:1fr 1fr}.user-summary-note{display:none}.user-filter-v23{grid-template-columns:1fr}.user-filter-v23 .search-box{grid-column:auto}.user-page-head-v23{align-items:flex-start}.user-actions-v23{min-width:118px}.user-modal-v23{border-radius:18px!important}.login-form-v14{margin-left:10px;margin-right:10px}}


/* === v24 contextual archive owner + audit clear === */
.archive-owner-info-v24{min-height:58px;display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:13px;border:1px solid #dcece3;background:linear-gradient(145deg,#f3fbf6,#eaf8f0)}
.archive-owner-icon-v24{width:38px;height:38px;border-radius:11px;background:linear-gradient(145deg,#d9f6e5,#edfff4);display:grid;place-items:center;color:#087344;font-size:16px;flex:0 0 auto}
.archive-owner-info-v24 strong{display:block;color:#075e39;font-size:12px}.archive-owner-info-v24 small{display:block;color:#71837a;font-size:10px;margin-top:2px}


/* === v25 optional prodi / umum semua prodi === */
#prodiHelp{line-height:1.5}
#prodi_id:disabled{background:#edf8f2;color:#075e39;border-color:#cfe8d9;font-weight:700;opacity:1}


/* === v26 generated links + prodi visibility === */
.share-link-cell-v26{display:flex;align-items:center;gap:6px;min-width:360px}.share-link-cell-v26 .form-control{min-width:260px;font-size:10px;background:#f7fbf9}.generated-filter-v26{display:grid!important;grid-template-columns:minmax(280px,1fr) 160px 115px auto auto;gap:9px!important}.generated-filter-v26 .form-select{max-width:none!important}
@media(max-width:900px){.generated-filter-v26{grid-template-columns:1fr 1fr}.generated-filter-v26 .search-box{grid-column:1/-1}.share-link-cell-v26{min-width:290px}}


/* === v27 generated link delete + explicit paging === */
.generated-pager-wrap-v27{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border-top:1px solid #edf3ef;background:linear-gradient(180deg,#fff,#fbfdfc)}
.generated-pager-wrap-v27 .pagination{margin:0}
@media(max-width:700px){.generated-pager-wrap-v27{align-items:flex-start;flex-direction:column}}


/* === v28 richer phone gradient + archive delete + no-number UX === */
.phone-login-v14 .phone-screen{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 8%,rgba(100,255,177,.32),transparent 25%),
    radial-gradient(circle at 88% 20%,rgba(10,168,95,.24),transparent 32%),
    radial-gradient(circle at 35% 78%,rgba(6,91,55,.12),transparent 34%),
    linear-gradient(160deg,#dff7e9 0%,#f5fcf8 38%,#cdeedb 72%,#bfe7d0 100%)!important;
}
.phone-login-v14 .phone-screen:before,
.phone-login-v14 .phone-screen:after{
  content:"";position:absolute;left:-12%;width:124%;border-radius:50%;pointer-events:none;z-index:0;
}
.phone-login-v14 .phone-screen:before{
  top:92px;height:150px;transform:rotate(-7deg);
  background:linear-gradient(110deg,rgba(8,115,68,.16),rgba(12,168,95,.06),rgba(255,255,255,.22));
  box-shadow:0 1px 0 rgba(255,255,255,.34) inset;
}
.phone-login-v14 .phone-screen:after{
  bottom:0;height:115px;transform:rotate(5deg);
  background:linear-gradient(120deg,rgba(3,61,38,.13),rgba(12,168,95,.20),rgba(255,255,255,.05));
}
.phone-login-v14 .phone-status,
.phone-login-v14 .phone-appbar,
.phone-login-v14 .login-form-v14,
.phone-login-v14 .phone-homebar,
.phone-login-v14 .phone-island{position:relative;z-index:2}
.phone-appbar-centered{
  background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.03))!important;
  border-bottom:1px solid rgba(255,255,255,.20);
}
.login-form-v14{
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(238,250,243,.78))!important;
  border:1px solid rgba(255,255,255,.70)!important;
  box-shadow:0 18px 34px rgba(4,75,44,.12),inset 0 1px 0 rgba(255,255,255,.78)!important;
}
#documentNumber:disabled{
  background:linear-gradient(145deg,#eef8f2,#e5f4eb)!important;
  color:#6d8176!important;
  border-style:dashed!important;
}


/* === v29 per-user S3 storage quota management === */
.user-summary-v23{grid-template-columns:repeat(4,minmax(150px,1fr))!important}
.quota-alert-card-v29.danger{border-color:rgba(205,60,60,.18);background:linear-gradient(145deg,#fff,#fff3f3)}
.quota-alert-card-v29.danger .user-summary-icon,.quota-alert-card-v29.danger strong{color:#b93636}
.quota-alert-card-v29.warning{border-color:rgba(218,153,34,.18);background:linear-gradient(145deg,#fff,#fff9eb)}
.quota-alert-card-v29.warning .user-summary-icon,.quota-alert-card-v29.warning strong{color:#9c6a13}
.quota-mini-v29{min-width:145px;font-size:10px;color:#60756a}.quota-mini-v29 b{color:#204b36}
.quota-bar-v29{height:6px;border-radius:99px;background:#e6eee9;overflow:hidden;margin-top:5px}
.quota-bar-v29.large{height:9px}
.quota-bar-v29>span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#0a8b4d,#29bf73);transition:width .25s ease}
.quota-bar-v29>span.hampir{background:linear-gradient(90deg,#d39a24,#f0bc4c)}
.quota-bar-v29>span.penuh{background:linear-gradient(90deg,#c63c3c,#e25d5d)}
.quota-bar-v29>span.unlimited{background:linear-gradient(90deg,#0a8b4d,#29bf73)}
.quota-label-v29{display:inline-flex;padding:3px 6px;border-radius:6px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.35px}
.quota-label-v29.normal{background:#e8f8ef;color:#087344}.quota-label-v29.warning{background:#fff4db;color:#9a6917}.quota-label-v29.full{background:#fdeaea;color:#b73535}.quota-label-v29.unlimited{background:#edf3ff;color:#49649d}
.quota-action-v29{background:#eef7ff!important;color:#476a9b!important}
.quota-full-v29{background:#fdeaea!important;color:#b73535!important}.quota-warning-v29{background:#fff4db!important;color:#9a6917!important}.quota-unlimited-v29{background:#edf3ff!important;color:#49649d!important}
.quota-form-box-v29{padding:14px;border:1px solid #e1eee7;border-radius:14px;background:linear-gradient(145deg,#f7fcf9,#eef8f2)}
.quota-info-banner-v29{display:flex;align-items:center;gap:14px;padding:16px 18px;margin-bottom:16px;border-radius:17px;background:linear-gradient(135deg,#064b2e,#087344 55%,#0ca85f);color:#fff;box-shadow:0 12px 28px rgba(7,91,55,.13)}
.quota-info-banner-v29 strong{display:block;font-size:13px}.quota-info-banner-v29 span{display:block;font-size:11px;color:rgba(255,255,255,.76);margin-top:2px}.quota-info-icon-v29{width:43px;height:43px;border-radius:13px;background:rgba(255,255,255,.13);display:grid;place-items:center;font-size:19px}
.quota-filter-v29{display:grid!important;grid-template-columns:minmax(260px,1fr) 180px 115px auto auto;gap:9px!important}.quota-filter-v29 .form-select{max-width:none!important}
.quota-progress-cell-v29{min-width:180px}.quota-progress-cell-v29 small{display:block;color:#75877d;margin-top:5px;font-size:9px}.quota-inline-form-v29{min-width:220px}
.quota-big-v29{padding:12px;border-radius:13px;background:#f5faf7;border:1px solid #e6f0ea;color:#536c60;font-size:11px}.quota-big-v29 strong{color:#075e39}
.quota-profile-number-v29{display:flex;align-items:flex-end;gap:7px;margin-bottom:10px}.quota-profile-number-v29 strong{font-size:25px;color:#075e39;line-height:1}.quota-profile-number-v29 span{font-size:11px;color:#788a80}
.dashboard-quota-v29{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;padding:14px 18px;margin-bottom:18px;border:1px solid rgba(8,115,68,.10);border-radius:17px;background:linear-gradient(135deg,#ffffff,#f0faf4);box-shadow:0 8px 22px rgba(4,59,37,.045)}
.dashboard-quota-v29.hampir{background:linear-gradient(135deg,#fff,#fff9eb);border-color:rgba(205,147,38,.16)}.dashboard-quota-v29.penuh{background:linear-gradient(135deg,#fff,#fff0f0);border-color:rgba(196,58,58,.15)}
.quota-dashboard-icon-v29{width:45px;height:45px;border-radius:13px;background:linear-gradient(145deg,#dff7e9,#edfff4);color:#087344;display:grid;place-items:center;font-size:18px}.dashboard-quota-v29.hampir .quota-dashboard-icon-v29{background:#fff1cf;color:#9b6917}.dashboard-quota-v29.penuh .quota-dashboard-icon-v29{background:#fde1e1;color:#b73535}
.quota-dashboard-main-v29 strong{display:block;color:#15422e;font-size:12px}.quota-dashboard-main-v29 strong+span{display:block;font-size:10px;color:#7c8e84;margin-top:2px}.quota-dashboard-value-v29{font-weight:900;color:#075e39}.quota-dashboard-value-v29 small{font-weight:600;color:#71857a}
.quota-dashboard-status-v29{display:flex;align-items:center;gap:6px;padding:7px 9px;border-radius:10px;background:#e7f8ee;color:#087344;font-size:10px;font-weight:900}.dashboard-quota-v29.hampir .quota-dashboard-status-v29{background:#fff1cf;color:#966411}.dashboard-quota-v29.penuh .quota-dashboard-status-v29{background:#fde1e1;color:#b73535}
.quota-inline-v29{padding:10px 11px;border-radius:11px;background:#f3faf6;border:1px solid #e0eee6;font-size:10px;color:#5d7468}
@media(max-width:1100px){.user-summary-v23{grid-template-columns:repeat(2,1fr)!important}.quota-filter-v29{grid-template-columns:1fr 1fr}.quota-filter-v29 .search-box{grid-column:1/-1}}
@media(max-width:700px){.user-summary-v23{grid-template-columns:1fr 1fr!important}.dashboard-quota-v29{grid-template-columns:42px 1fr}.quota-dashboard-status-v29{grid-column:1/-1;justify-self:start}.quota-filter-v29{grid-template-columns:1fr}.quota-filter-v29 .search-box{grid-column:auto}}


/* === v30 public documents + richer emerald login gradient === */
.login-body.login-v14{
  background:
    radial-gradient(circle at 18% 15%,rgba(65,232,142,.22),transparent 28%),
    radial-gradient(circle at 82% 12%,rgba(0,194,116,.20),transparent 32%),
    linear-gradient(135deg,#021d12 0%,#043d25 26%,#087344 58%,#0aae63 100%)!important;
}
.login-v14 .login-visual{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 15%,rgba(121,255,183,.16),transparent 24%),
    radial-gradient(circle at 86% 76%,rgba(40,219,129,.16),transparent 32%),
    linear-gradient(145deg,#032d1c 0%,#065f39 48%,#0b9a58 100%)!important;
}
.login-v14 .login-visual:after{
  content:"";position:absolute;left:-18%;right:-18%;bottom:-115px;height:250px;border-radius:50% 50% 0 0/100% 100% 0 0;
  background:linear-gradient(90deg,rgba(127,255,188,.10),rgba(255,255,255,.06),rgba(37,214,122,.18));
  transform:rotate(-5deg);pointer-events:none
}
.login-v14 .login-panel{
  background:
    radial-gradient(circle at 78% 18%,rgba(145,255,197,.18),transparent 25%),
    linear-gradient(160deg,#034127 0%,#077342 50%,#0db768 100%)!important;
}
.phone-stage:before{content:"";position:absolute;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(101,255,171,.18),transparent 66%);filter:blur(2px);pointer-events:none}
.phone-login-v14{box-shadow:0 36px 80px rgba(1,31,19,.36),0 0 0 1px rgba(255,255,255,.13)!important}
.login-form-v14{backdrop-filter:blur(16px)!important}
.login-public-entry-v30{margin-top:10px}.login-public-entry-v30 .btn{border-radius:12px;font-size:11px;font-weight:800;background:rgba(236,250,242,.78);border-color:#b9dfc8;color:#07643b}.login-public-entry-v30 .btn:hover{background:#e3f7eb;color:#054f2f}

/* Public documents */
.public-docs-v30{min-height:100vh;background:linear-gradient(180deg,#f5fbf7 0%,#ffffff 48%,#eef8f2 100%);color:#173b2b}
.public-docs-topbar-v30{height:82px;padding:0 clamp(20px,5vw,74px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(8,115,68,.08);position:sticky;top:0;z-index:30}
.public-brand-v30{display:flex;align-items:center;gap:13px}.public-brand-v30 img{width:54px;height:54px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(3,66,39,.12))}.public-brand-v30 strong{display:block;color:#064d2f;font-size:15px;font-weight:900}.public-brand-v30 span{display:block;color:#718279;font-size:10px;margin-top:2px}.public-login-btn-v30{background:linear-gradient(135deg,#075e39,#0ca85f);color:#fff!important;border:0;border-radius:12px;padding:9px 16px;font-weight:800;font-size:11px;box-shadow:0 7px 16px rgba(7,100,59,.15)}
.public-docs-hero-v30{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 230px;align-items:center;gap:30px;padding:54px clamp(20px,6vw,90px);background:linear-gradient(135deg,#043b25 0%,#076e40 47%,#0cb363 100%);color:#fff}
.public-docs-hero-v30:before{content:"";position:absolute;width:460px;height:460px;border-radius:50%;right:-150px;top:-260px;background:rgba(255,255,255,.07)}.public-docs-hero-v30:after{content:"";position:absolute;width:620px;height:170px;border-radius:50%;left:-80px;bottom:-120px;background:linear-gradient(90deg,rgba(151,255,198,.12),rgba(255,255,255,.04));transform:rotate(-3deg)}
.public-docs-hero-copy-v30,.public-total-v30{position:relative;z-index:2}.public-kicker-v30{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:99px;background:rgba(255,255,255,.08);font-size:9px;font-weight:900;letter-spacing:1px}.public-docs-hero-copy-v30 h1{max-width:760px;font-size:clamp(30px,4vw,52px);line-height:1.04;letter-spacing:-1.4px;font-weight:950;margin:16px 0 12px}.public-docs-hero-copy-v30 p{max-width:760px;color:rgba(255,255,255,.76);font-size:13px;line-height:1.7;margin:0}.public-total-v30{padding:20px;border:1px solid rgba(255,255,255,.18);border-radius:20px;background:rgba(255,255,255,.10);backdrop-filter:blur(10px);box-shadow:0 15px 34px rgba(3,48,29,.15)}.public-total-v30 span,.public-total-v30 small{display:block;color:rgba(255,255,255,.72);font-size:10px}.public-total-v30 strong{display:block;font-size:42px;line-height:1;margin:8px 0;font-weight:950}
.public-docs-main-v30{max-width:1460px;margin:0 auto;padding:28px clamp(16px,4vw,48px) 44px}.public-section-heading-v30{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.public-section-heading-v30 span,.public-doc-list-head-v30 span{display:block;font-size:8px;letter-spacing:1.2px;font-weight:900;color:#0a8b4d}.public-section-heading-v30 h2,.public-doc-list-head-v30 h2{font-size:18px;color:#123e2b;font-weight:900;margin:3px 0 0}.public-section-heading-v30 a{font-size:10px;color:#087344;text-decoration:none;font-weight:800}
.public-category-grid-v30{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:22px}.public-category-card-v30{display:flex;align-items:center;gap:10px;padding:12px 13px;border:1px solid #e3eee8;border-radius:14px;background:#fff;text-decoration:none;box-shadow:0 6px 18px rgba(4,59,37,.035);transition:.18s}.public-category-card-v30:hover,.public-category-card-v30.active{transform:translateY(-1px);border-color:#a9d9bc;background:linear-gradient(145deg,#f2fbf6,#e8f8ef)}.public-category-card-v30>i{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#e8f8ef;color:#087344}.public-category-card-v30 strong{display:block;font-size:11px;color:#16432f}.public-category-card-v30 span{display:block;font-size:9px;color:#809087;margin-top:2px}
.public-search-card-v30{padding:14px;border:1px solid #e2eee7;border-radius:18px;background:#fff;box-shadow:0 9px 24px rgba(4,59,37,.045);margin-bottom:20px}.public-filter-v30{display:grid;grid-template-columns:minmax(260px,1.8fr) 160px 180px 115px 105px auto auto;gap:8px}.public-search-v30{position:relative}.public-search-v30>i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#7b9185}.public-search-v30 .form-control{padding-left:36px}.public-filter-v30 .form-control,.public-filter-v30 .form-select{min-height:42px;border-radius:11px;border-color:#dfeae4;font-size:11px}.public-filter-btn-v30{background:linear-gradient(135deg,#087344,#0ca85f);color:#fff;border:0;border-radius:11px;font-weight:800;font-size:11px}
.public-doc-list-v30{border:1px solid #e1ece6;border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(4,59,37,.05);overflow:hidden}.public-doc-list-head-v30{padding:18px 20px;border-bottom:1px solid #edf3ef;background:linear-gradient(180deg,#fff,#fbfdfc)}.public-doc-card-v30{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:15px;padding:17px 20px;border-bottom:1px solid #edf3ef;transition:.16s}.public-doc-card-v30:hover{background:#f9fdfb}.public-doc-icon-v30{width:46px;height:46px;border-radius:13px;background:linear-gradient(145deg,#e1f8eb,#f2fdf6);color:#087344;display:grid;place-items:center;font-size:19px}.public-doc-meta-v30{display:flex;gap:6px;flex-wrap:wrap}.public-doc-meta-v30 span{padding:3px 6px;border-radius:6px;background:#edf8f2;color:#176443;font-size:8px;font-weight:800}.public-doc-info-v30 h3{font-size:13px;font-weight:900;color:#153f2d;margin:7px 0 4px}.public-doc-info-v30 p{font-size:10px;color:#71847a;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:800px}.public-doc-bottom-v30{display:flex;gap:14px;flex-wrap:wrap;margin-top:7px;color:#839288;font-size:9px}.public-doc-bottom-v30 i{margin-right:4px}.public-download-btn-v30{background:linear-gradient(135deg,#087344,#0ca85f);color:#fff!important;border:0;border-radius:10px;padding:8px 11px;font-size:10px;font-weight:800}.public-empty-v30{text-align:center;padding:54px 20px;color:#7b8d83}.public-empty-v30 i{font-size:34px;color:#b4c9bc}.public-empty-v30 h3{font-size:15px;color:#325542;margin:10px 0 4px}.public-empty-v30 p{font-size:10px}.public-pager-v30{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;background:#fbfdfc;color:#7a8b82;font-size:9px}.public-pager-v30 .pagination{margin:0}
.public-docs-footer-v30{padding:24px clamp(20px,6vw,90px);display:flex;justify-content:space-between;gap:18px;align-items:center;background:linear-gradient(135deg,#033821,#075e38);color:#fff}.public-docs-footer-v30 strong{display:block;font-size:12px}.public-docs-footer-v30 div span,.public-docs-footer-v30>span{font-size:9px;color:rgba(255,255,255,.68);display:block;margin-top:2px}
@media(max-width:1100px){.public-filter-v30{grid-template-columns:1fr 1fr 1fr}.public-search-v30{grid-column:1/-1}.public-docs-hero-v30{grid-template-columns:1fr 190px}}
@media(max-width:720px){.public-docs-topbar-v30{height:70px;padding:0 14px}.public-brand-v30 img{width:44px;height:44px}.public-brand-v30 strong{font-size:12px}.public-brand-v30 span{font-size:8px}.public-docs-hero-v30{grid-template-columns:1fr;padding:34px 18px}.public-total-v30{max-width:220px}.public-filter-v30{grid-template-columns:1fr}.public-search-v30{grid-column:auto}.public-doc-card-v30{grid-template-columns:42px 1fr}.public-doc-action-v30{grid-column:2}.public-download-btn-v30{width:100%}.public-pager-v30,.public-docs-footer-v30{align-items:flex-start;flex-direction:column}.public-docs-main-v30{padding:18px 12px 30px}}


/* === v31 standalone public landing portal === */
.public-nav-v31{display:flex;align-items:center;gap:8px}
.public-nav-v31>a:not(.btn){text-decoration:none;color:#48695a;font-size:10px;font-weight:800;padding:8px 10px;border-radius:9px}
.public-nav-v31>a:not(.btn):hover,.public-nav-v31>a.active:not(.btn){color:#087344;background:#edf8f2}
.public-hero-actions-v31{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.public-hero-primary-v31,.public-hero-secondary-v31{border-radius:12px;padding:10px 15px;font-size:11px;font-weight:850}
.public-hero-primary-v31{background:#fff;color:#07633b!important;border:0;box-shadow:0 8px 20px rgba(1,42,24,.15)}
.public-hero-secondary-v31{background:rgba(255,255,255,.09);color:#fff!important;border:1px solid rgba(255,255,255,.22)}
.public-hero-secondary-v31:hover{background:rgba(255,255,255,.16)}
.public-footer-right-v31{display:flex;align-items:flex-end;gap:7px;flex-direction:column}
.public-footer-right-v31 a{font-size:9px;color:#bff5d2;text-decoration:none;font-weight:800}
.public-footer-right-v31 a:hover{color:#fff}
html{scroll-behavior:smooth}
@media(max-width:760px){
  .public-nav-v31>a:not(.btn){display:none}
  .public-nav-v31{gap:0}
  .public-hero-actions-v31 .btn{flex:1}
  .public-footer-right-v31{align-items:flex-start}
}


/* === v32 premium public portal redesign === */
.portal-v32{min-height:100vh;background:#f5faf7;color:#163b2a;font-family:Inter,"Segoe UI",sans-serif}
.portal-nav-v32{height:84px;padding:0 clamp(20px,6vw,88px);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;background:rgba(250,253,251,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(7,91,55,.08)}
.portal-brand-v32{display:flex;align-items:center;gap:13px}.portal-brand-v32 img{width:55px;height:55px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(4,70,42,.12))}.portal-brand-v32 strong{display:block;font-size:15px;font-weight:950;color:#064b2e;letter-spacing:-.2px}.portal-brand-v32 span{display:block;font-size:10px;color:#75877d;margin-top:2px}
.portal-nav-v32 nav{display:flex;align-items:center;gap:8px}.portal-nav-v32 nav>a{text-decoration:none;color:#567064;font-size:11px;font-weight:800;padding:9px 11px;border-radius:10px}.portal-nav-v32 nav>a:hover,.portal-nav-v32 nav>a.active{color:#087344;background:#edf8f2}.portal-login-v32{background:linear-gradient(135deg,#075c37,#0ca85f)!important;color:#fff!important;padding:10px 15px!important;box-shadow:0 8px 20px rgba(7,105,61,.16)}
.portal-hero-v32{position:relative;overflow:hidden;background:linear-gradient(135deg,#032b1b 0%,#075d37 46%,#0ca95f 100%);color:#fff}
.portal-hero-v32:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 15%,rgba(149,255,197,.15),transparent 25%),radial-gradient(circle at 8% 90%,rgba(80,232,149,.10),transparent 32%)}.portal-hero-v32:after{content:"";position:absolute;width:780px;height:280px;border-radius:50%;right:-170px;bottom:-210px;background:linear-gradient(90deg,rgba(255,255,255,.07),rgba(147,255,196,.12));transform:rotate(-8deg)}
.portal-hero-inner-v32{position:relative;z-index:2;max-width:1460px;margin:auto;padding:72px clamp(20px,6vw,88px) 78px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.65fr);align-items:center;gap:55px}.portal-eyebrow-v32{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:99px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);font-size:9px;font-weight:900;letter-spacing:1.15px}.portal-hero-copy-v32 h1{font-size:clamp(38px,5vw,66px);line-height:1.02;letter-spacing:-2px;font-weight:950;max-width:900px;margin:17px 0}.portal-hero-copy-v32 h1 span{display:block;color:#b8f4ce}.portal-hero-copy-v32 p{max-width:780px;font-size:13px;line-height:1.75;color:rgba(255,255,255,.76)}
.portal-hero-search-v32{display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:7px;margin-top:25px;max-width:760px;padding:7px 7px 7px 15px;border-radius:16px;background:#fff;box-shadow:0 18px 45px rgba(1,40,24,.2)}.portal-hero-search-v32>i{color:#7a9084}.portal-hero-search-v32 input{border:0;outline:0;min-width:0;font-size:12px;color:#193e2d}.portal-hero-search-v32 input::placeholder{color:#96a69d}.portal-hero-search-v32 button{border:0;border-radius:11px;padding:11px 14px;background:linear-gradient(135deg,#087344,#0ca85f);color:#fff;font-size:10px;font-weight:850;display:flex;align-items:center;gap:9px}
.portal-trust-v32{display:flex;gap:17px;flex-wrap:wrap;margin-top:18px}.portal-trust-v32 span{font-size:9px;color:rgba(255,255,255,.74)}.portal-trust-v32 i{color:#aef2c7;margin-right:4px}
.portal-visual-v32{position:relative;min-height:300px}.portal-main-card-v32{position:absolute;right:25px;top:30px;width:275px;padding:23px;border:1px solid rgba(255,255,255,.16);border-radius:25px;background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.08));backdrop-filter:blur(17px);box-shadow:0 30px 60px rgba(1,40,24,.24)}.portal-card-top-v32{display:flex;justify-content:space-between;font-size:10px;color:#d8f8e4}.portal-main-card-v32>strong{display:block;font-size:58px;line-height:1;margin-top:30px}.portal-main-card-v32>p{font-size:11px;color:rgba(255,255,255,.65);margin:6px 0 20px}.portal-mini-bars-v32{height:60px;display:flex;align-items:flex-end;gap:7px}.portal-mini-bars-v32 span{flex:1;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#9af0bd,#35c77b)}.portal-mini-bars-v32 span:nth-child(1){height:35%}.portal-mini-bars-v32 span:nth-child(2){height:58%}.portal-mini-bars-v32 span:nth-child(3){height:46%}.portal-mini-bars-v32 span:nth-child(4){height:80%}.portal-mini-bars-v32 span:nth-child(5){height:100%}
.portal-float-card-v32{position:absolute;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:16px;background:#fff;color:#173d2b;box-shadow:0 18px 38px rgba(1,45,26,.18)}.portal-float-card-v32>i{width:36px;height:36px;border-radius:11px;background:#e7f8ee;color:#087344;display:grid;place-items:center;font-size:17px}.portal-float-card-v32 strong{display:block;font-size:10px}.portal-float-card-v32 span{display:block;font-size:8px;color:#829188;margin-top:2px}.portal-float-card-v32.one{left:0;top:190px}.portal-float-card-v32.two{right:0;top:0}
.portal-stats-v32{max-width:1240px;margin:-30px auto 0;position:relative;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid #e2eee7;border-radius:20px;box-shadow:0 16px 38px rgba(3,65,38,.09);overflow:hidden}.portal-stats-v32>div{display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:11px;padding:17px 20px;border-right:1px solid #e9f1ec}.portal-stats-v32>div:last-child{border:0}.portal-stats-v32 i{grid-row:1/3;width:38px;height:38px;border-radius:11px;background:#e9f8ef;color:#087344;display:grid;place-items:center}.portal-stats-v32 strong{font-size:18px;line-height:1;color:#075d38}.portal-stats-v32 span{font-size:9px;color:#798b81;margin-top:3px}
.portal-content-v32{max-width:1400px;margin:auto;padding:54px clamp(16px,4vw,44px)}.portal-section-v32{margin-bottom:50px}.portal-section-head-v32{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.portal-section-head-v32 span{font-size:8px;letter-spacing:1.2px;color:#0a8b4d;font-weight:900}.portal-section-head-v32 h2{font-size:24px;font-weight:950;color:#113d2a;margin:4px 0 3px;letter-spacing:-.4px}.portal-section-head-v32 p{font-size:10px;color:#7a8c82;margin:0}.portal-section-head-v32>a{font-size:10px;text-decoration:none;color:#087344;font-weight:850}
.portal-category-grid-v32{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.portal-category-v32{display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:11px;padding:15px;border:1px solid #e1ece6;border-radius:16px;background:#fff;text-decoration:none;color:#173d2b;box-shadow:0 7px 20px rgba(3,60,36,.035);transition:.18s}.portal-category-v32:hover,.portal-category-v32.active{transform:translateY(-2px);border-color:#a9dabc;box-shadow:0 12px 26px rgba(5,96,55,.07);background:linear-gradient(145deg,#fff,#f1fbf5)}.portal-cat-icon-v32{width:44px;height:44px;border-radius:13px;background:linear-gradient(145deg,#e5f8ed,#f3fdf7);color:#087344;display:grid;place-items:center;font-size:18px}.portal-category-v32 strong{display:block;font-size:11px}.portal-category-v32 small{display:block;font-size:8px;color:#819188;margin-top:3px}.portal-category-v32>i{color:#9eb0a6}
.portal-filter-card-v32{background:#fff;border:1px solid #e0ebe5;border-radius:18px;padding:13px;box-shadow:0 9px 24px rgba(3,60,36,.04)}.portal-filter-card-v32 form{display:grid;grid-template-columns:minmax(250px,1.5fr) 160px 180px 110px 105px auto auto;gap:8px}.portal-filter-search-v32{position:relative}.portal-filter-search-v32 i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#84968c}.portal-filter-search-v32 input{padding-left:36px}.portal-filter-card-v32 .form-control,.portal-filter-card-v32 .form-select{min-height:42px;border-radius:11px;border-color:#dde9e2;font-size:10px}.portal-filter-btn-v32{background:linear-gradient(135deg,#087344,#0ca85f);color:#fff;border:0;border-radius:11px;font-size:10px;font-weight:850}
.portal-results-head-v32{display:flex;justify-content:space-between;align-items:center;margin:18px 2px 12px;color:#73877c;font-size:9px}.portal-results-head-v32 b{color:#075e39}
.portal-doc-grid-v32{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.portal-doc-v32{padding:18px;border:1px solid #e0ebe5;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(3,60,36,.04);transition:.18s}.portal-doc-v32:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(3,74,42,.07);border-color:#bddfca}.portal-doc-top-v32{display:flex;justify-content:space-between;align-items:start}.portal-doc-icon-v32{width:45px;height:45px;border-radius:13px;background:linear-gradient(145deg,#e2f7ea,#f3fcf6);color:#087344;display:grid;place-items:center;font-size:19px}.portal-doc-tags-v32{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.portal-doc-tags-v32 span{padding:4px 6px;border-radius:6px;background:#eef8f2;color:#1a6947;font-size:7px;font-weight:850}.portal-doc-v32 h3{font-size:13px;line-height:1.4;font-weight:900;color:#153f2d;margin:14px 0 6px}.portal-doc-v32 p{font-size:9px;line-height:1.55;color:#7b8d83;min-height:28px;margin:0}.portal-doc-meta-v32{display:flex;flex-direction:column;gap:5px;padding:12px 0;margin-top:11px;border-top:1px solid #edf3ef;border-bottom:1px solid #edf3ef;color:#71857a;font-size:8px}.portal-doc-meta-v32 i{width:15px;color:#0a8b4d}.portal-doc-footer-v32{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.portal-public-badge-v32{font-size:8px;color:#087344;font-weight:850}.portal-download-v32{padding:7px 10px;border-radius:9px;background:linear-gradient(135deg,#087344,#0ca85f);color:#fff!important;text-decoration:none;font-size:9px;font-weight:850}.portal-empty-v32{grid-column:1/-1;text-align:center;padding:50px;background:#fff;border:1px dashed #ceded4;border-radius:18px;color:#788b80}.portal-empty-v32 i{font-size:30px}.portal-empty-v32 h3{font-size:14px;color:#335742;margin:8px 0}.portal-empty-v32 p{font-size:9px}.portal-pager-v32{display:flex;align-items:center;justify-content:space-between;margin-top:15px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid #e3ece7;color:#77897f;font-size:9px}.portal-pager-v32 .pagination{margin:0}
.portal-footer-v32{padding:26px clamp(20px,6vw,88px);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#032b1b,#075e38);color:#fff}.portal-footer-brand-v32{display:flex;align-items:center;gap:11px}.portal-footer-brand-v32 img{width:44px;height:44px;object-fit:contain}.portal-footer-brand-v32 strong{display:block;font-size:11px}.portal-footer-brand-v32 span{display:block;font-size:8px;color:rgba(255,255,255,.65);margin-top:2px}.portal-footer-note-v32{display:flex;align-items:center;gap:15px;font-size:8px;color:rgba(255,255,255,.68)}.portal-footer-note-v32 a{color:#baf2cd;text-decoration:none;font-weight:850}
@media(max-width:1100px){.portal-hero-inner-v32{grid-template-columns:1fr}.portal-visual-v32{display:none}.portal-stats-v32{margin:-22px 20px 0}.portal-filter-card-v32 form{grid-template-columns:1fr 1fr 1fr}.portal-filter-search-v32{grid-column:1/-1}.portal-doc-grid-v32{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.portal-nav-v32{height:70px;padding:0 14px}.portal-brand-v32 img{width:43px;height:43px}.portal-brand-v32 strong{font-size:12px}.portal-brand-v32 span{font-size:8px}.portal-nav-v32 nav>a:not(.portal-login-v32){display:none}.portal-login-v32{padding:8px 11px!important}.portal-hero-inner-v32{padding:42px 18px 58px}.portal-hero-copy-v32 h1{font-size:38px;letter-spacing:-1px}.portal-hero-search-v32{grid-template-columns:22px 1fr}.portal-hero-search-v32 button span{display:none}.portal-stats-v32{grid-template-columns:1fr 1fr}.portal-stats-v32>div:nth-child(2){border-right:0}.portal-stats-v32>div:nth-child(-n+2){border-bottom:1px solid #e9f1ec}.portal-content-v32{padding:42px 12px}.portal-section-head-v32{align-items:flex-start;flex-direction:column}.portal-category-grid-v32{grid-template-columns:1fr 1fr}.portal-filter-card-v32 form{grid-template-columns:1fr}.portal-filter-search-v32{grid-column:auto}.portal-doc-grid-v32{grid-template-columns:1fr}.portal-pager-v32,.portal-footer-v32{align-items:flex-start;flex-direction:column;gap:12px}.portal-footer-note-v32{align-items:flex-start;flex-direction:column}}


/* === v33 public portal motion === */
.portal-hero-copy-v32{animation:portalHeroInV33 .75s cubic-bezier(.2,.75,.25,1) both}
.portal-visual-v32{animation:portalVisualInV33 .9s .12s cubic-bezier(.2,.75,.25,1) both}
.portal-main-card-v32{animation:portalFloatV33 5.5s ease-in-out infinite}
.portal-float-card-v32.one{animation:portalFloatSmallV33 4.6s .4s ease-in-out infinite}
.portal-float-card-v32.two{animation:portalFloatSmallV33 5.2s .9s ease-in-out infinite}
.portal-mini-bars-v32 span{transform-origin:bottom;animation:portalBarV33 .75s cubic-bezier(.2,.8,.25,1) both}
.portal-mini-bars-v32 span:nth-child(2){animation-delay:.08s}.portal-mini-bars-v32 span:nth-child(3){animation-delay:.16s}.portal-mini-bars-v32 span:nth-child(4){animation-delay:.24s}.portal-mini-bars-v32 span:nth-child(5){animation-delay:.32s}
.portal-reveal-v33,.portal-card-reveal-v33{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.75,.25,1);transition-delay:var(--reveal-delay,0ms)}
.portal-card-reveal-v33{transform:translateY(14px) scale(.985)}
.portal-reveal-v33.is-visible-v33,.portal-card-reveal-v33.is-visible-v33{opacity:1;transform:none}
.portal-download-v32 i{display:inline-block;transition:transform .2s ease}.portal-download-v32:hover i{transform:translateY(2px)}
.portal-category-v32>i{transition:transform .22s ease}.portal-category-v32:hover>i{transform:translate(2px,-2px)}
.portal-hero-search-v32{transition:transform .2s ease,box-shadow .2s ease}.portal-hero-search-v32:focus-within{transform:translateY(-2px);box-shadow:0 22px 50px rgba(1,40,24,.27)}
.portal-hero-search-v32 button i{transition:transform .2s ease}.portal-hero-search-v32 button:hover i{transform:translateX(3px)}
.portal-footer-note-v32{align-items:center!important}
@keyframes portalHeroInV33{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes portalVisualInV33{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
@keyframes portalFloatV33{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes portalFloatSmallV33{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes portalBarV33{from{transform:scaleY(.08);opacity:.35}to{transform:scaleY(1);opacity:1}}
@media(prefers-reduced-motion:reduce){
  .portal-hero-copy-v32,.portal-visual-v32,.portal-main-card-v32,.portal-float-card-v32,.portal-mini-bars-v32 span{animation:none!important}
  .portal-reveal-v33,.portal-card-reveal-v33{opacity:1!important;transform:none!important;transition:none!important}
  html{scroll-behavior:auto!important}
}


/* === v34 public header emerald gradient === */
.portal-nav-v32{
  background:
    radial-gradient(circle at 14% 0%,rgba(119,255,181,.14),transparent 24%),
    linear-gradient(105deg,#032d1c 0%,#075d38 46%,#0a8f50 74%,#0db767 100%)!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
  box-shadow:0 9px 28px rgba(2,52,31,.13);
}
.portal-brand-v32 strong{color:#fff!important}
.portal-brand-v32 span{color:rgba(255,255,255,.68)!important}
.portal-brand-v32 img{filter:drop-shadow(0 5px 9px rgba(0,35,20,.25))!important}
.portal-nav-v32 nav>a{color:rgba(255,255,255,.76)!important}
.portal-nav-v32 nav>a:hover,.portal-nav-v32 nav>a.active{color:#fff!important;background:rgba(255,255,255,.11)!important}
.portal-login-v32{background:rgba(255,255,255,.96)!important;color:#07613a!important;box-shadow:0 8px 20px rgba(1,47,27,.17)!important}
.portal-login-v32:hover{background:#e9faef!important;color:#054d2f!important}


/* === v35 fix public Login button visibility === */
.portal-nav-v32 nav .portal-login-v32{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px;
  background:#ffffff!important;
  color:#075d38!important;
  border:2px solid rgba(255,255,255,.96)!important;
  padding:10px 18px!important;
  border-radius:11px!important;
  font-weight:900!important;
  opacity:1!important;
  visibility:visible!important;
  box-shadow:0 9px 24px rgba(0,39,22,.24)!important;
  position:relative;
  z-index:10;
}
.portal-nav-v32 nav .portal-login-v32 i{color:#075d38!important}
.portal-nav-v32 nav .portal-login-v32:hover{
  background:#dff8e9!important;
  color:#044c2d!important;
  border-color:#dff8e9!important;
  transform:translateY(-1px);
}
@media(max-width:720px){
  .portal-nav-v32 nav .portal-login-v32{
    display:inline-flex!important;
    padding:9px 13px!important;
    font-size:10px!important;
  }
}


/* === v36 premium generated-link page === */
.share-page-v36{
  min-height:100vh;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 14% 16%,rgba(60,235,137,.15),transparent 28%),
    radial-gradient(circle at 88% 82%,rgba(58,241,144,.12),transparent 30%),
    linear-gradient(135deg,#032c1c 0%,#075c38 48%,#0aa55c 100%);
  padding:42px 18px 30px;
  color:#fff;
}
.share-page-v36:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.35),transparent 70%);
}
.share-glow-v36{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}
.share-glow-v36.one{width:360px;height:360px;left:-170px;top:-160px;background:rgba(78,255,155,.11)}
.share-glow-v36.two{width:430px;height:430px;right:-220px;bottom:-200px;background:rgba(132,255,184,.10)}
.share-wrap-v36{position:relative;z-index:2;width:min(100%,940px);margin:0 auto}
.share-brand-v36{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:28px}
.share-brand-v36 img{
  width:112px!important;height:112px!important;max-width:none!important;
  object-fit:contain!important;background:transparent!important;
  padding:0!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;filter:drop-shadow(0 7px 14px rgba(0,0,0,.24))!important;
}
.share-brand-copy-v36{text-align:left}
.share-brand-copy-v36 strong{display:block;font-size:25px;font-weight:950;line-height:1.05;letter-spacing:.2px;color:#fff}
.share-brand-copy-v36 span{display:block;font-size:11px;color:rgba(255,255,255,.72);margin-top:6px}
.share-card-v36{
  overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:26px;
  background:rgba(255,255,255,.97);
  box-shadow:0 30px 80px rgba(0,38,22,.28);
}
.share-head-v36{
  display:flex;align-items:flex-start;justify-content:space-between;gap:25px;
  padding:30px 32px;
  background:linear-gradient(120deg,#064d2f 0%,#087344 48%,#0caf61 100%);
  color:#fff;
}
.share-kicker-v36{display:inline-flex;align-items:center;font-size:9px;font-weight:900;letter-spacing:1.05px;color:#c7f6d7}
.share-head-v36 h1{font-size:30px;line-height:1.18;font-weight:950;letter-spacing:-.5px;margin:7px 0 7px}
.share-head-v36 p{font-size:10px;line-height:1.6;color:rgba(255,255,255,.72);margin:0;max-width:630px}
.share-status-v36{
  flex:0 0 auto;display:flex;align-items:center;gap:7px;padding:9px 12px;
  border:1px solid rgba(255,255,255,.17);border-radius:12px;
  background:rgba(255,255,255,.09);font-size:9px;font-weight:850;color:#dcfae7;
}
.share-status-v36 i{font-size:15px}
.share-body-v36{padding:28px 32px 24px;color:#173d2b}
.share-info-grid-v36{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.share-info-v36{
  display:flex;align-items:center;gap:11px;padding:15px;border:1px solid #e1eee7;
  border-radius:15px;background:linear-gradient(145deg,#fff,#f5fbf7)
}
.share-info-icon-v36{
  width:42px;height:42px;border-radius:12px;display:grid;place-items:center;
  flex:0 0 auto;background:linear-gradient(145deg,#dff7e8,#f1fcf5);color:#087344;font-size:18px
}
.share-info-v36 small{display:block;font-size:8px;color:#82938a;margin-bottom:3px}
.share-info-v36 strong{display:block;font-size:11px;color:#17412d;word-break:break-word}
.share-description-v36{
  display:flex;align-items:flex-start;gap:9px;margin-top:15px;padding:12px 14px;border-radius:12px;
  background:#f4faf6;border:1px solid #e2eee7;color:#63796d;font-size:9px;line-height:1.55
}
.share-description-v36 i{color:#0a8b4d;margin-top:1px}
.share-actions-v36{display:grid;grid-template-columns:1.3fr 1fr;gap:12px;margin-top:18px}
.share-actions-v36 a{text-decoration:none}
.share-download-v36,.share-qr-v36{
  min-height:74px;display:grid;grid-template-columns:43px 1fr auto;align-items:center;gap:11px;
  border-radius:15px;padding:12px 14px;transition:.2s ease
}
.share-download-v36{
  color:#fff!important;background:linear-gradient(135deg,#087344,#0dbb68);
  box-shadow:0 10px 25px rgba(8,115,68,.18)
}
.share-qr-v36{color:#17412d!important;background:#f4faf6;border:1px solid #dcece3}
.share-download-v36:hover,.share-qr-v36:hover{transform:translateY(-2px)}
.share-action-icon-v36{
  width:42px;height:42px;border-radius:12px;display:grid;place-items:center;
  background:rgba(255,255,255,.14);font-size:18px
}
.share-qr-v36 .share-action-icon-v36{background:#e5f6ec;color:#087344}
.share-actions-v36 strong{display:block;font-size:11px;font-weight:900}
.share-actions-v36 small{display:block;font-size:8px;margin-top:3px;opacity:.72}
.share-arrow-v36{font-size:15px;opacity:.8}
.share-note-v36{
  display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;
  margin-top:18px;padding-top:16px;border-top:1px solid #edf3ef;color:#778b80;font-size:8px
}
.share-note-v36 i{color:#0b9554;margin-right:4px}
.share-footer-v36{
  display:flex;justify-content:center;gap:7px;align-items:center;
  margin-top:17px;color:rgba(255,255,255,.55);font-size:8px
}
@media(max-width:720px){
  .share-page-v36{padding:25px 12px 22px}
  .share-brand-v36{gap:12px;margin-bottom:20px}
  .share-brand-v36 img{width:88px!important;height:88px!important}
  .share-brand-copy-v36 strong{font-size:20px}
  .share-brand-copy-v36 span{font-size:9px}
  .share-head-v36{padding:23px 20px;flex-direction:column}
  .share-head-v36 h1{font-size:24px}
  .share-status-v36{align-self:flex-start}
  .share-body-v36{padding:20px}
  .share-info-grid-v36{grid-template-columns:1fr}
  .share-actions-v36{grid-template-columns:1fr}
}


/* === v37 global responsive hardening === */
html,body{max-width:100%;overflow-x:hidden}
img,svg,canvas,video{max-width:100%;height:auto}
table{width:100%}
.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}

/* general containers */
.content,.main-content,.page-content,.container-fluid,.card-ui,.card-body-ui,.public-body,.share-body-v36{min-width:0}
.card-ui,.stat-card,.archive-card,.quota-card,.settings-card,.profile-card{max-width:100%}
.form-control,.form-select,textarea,input,select{max-width:100%}

/* buttons/toolbars wrap better */
.btn-toolbar,.page-actions,.filter-actions,.action-group,.card-actions,.bulk-toolbar,.d-flex.gap-2,.d-flex.gap-3{flex-wrap:wrap}
.btn{white-space:normal}

/* desktop tables become horizontally scrollable instead of clipping */
.table-wrap,.table-container,.card-ui:has(table){overflow-x:auto;-webkit-overflow-scrolling:touch}
.card-ui table{min-width:760px}
.card-ui table.table-compact{min-width:620px}

/* dashboard */
.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(290px,.75fr)}
.chart-wrap,canvas{max-width:100%!important}
.dashboard-grid>*{min-width:0}

/* archive tabs and filters */
.archive-tabs-wrap{overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
.archive-tabs-wrap::-webkit-scrollbar{height:4px}
.archive-tabs-wrap .archive-tab{display:inline-flex;flex:0 0 auto}
.filter-row,.filters-grid,.archive-filter,.report-filter{display:flex;flex-wrap:wrap;gap:10px}
.filter-row>*{min-width:140px;flex:1}

/* settings */
.settings-layout,.profile-layout,.storage-layout{min-width:0}
.settings-tabs{overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
.settings-tabs .nav-link{display:inline-flex;flex:0 0 auto}

/* sidebar/topbar */
.sidebar{max-width:280px}
.topbar{min-width:0}
.topbar-title,.topbar-sub{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mobile-menu{flex:0 0 auto}

/* public portal */
.portal-v32,.portal-content-v32,.portal-section-v32,.portal-filter-card-v32,.portal-doc-v32{min-width:0}
.portal-hero-copy-v32 h1{overflow-wrap:anywhere}
.portal-category-v32,.portal-doc-v32{min-width:0}
.portal-doc-v32 h3,.portal-doc-meta-v32 span{overflow-wrap:anywhere}

/* share page */
.share-card-v36,.share-head-v36,.share-info-v36,.share-actions-v36 a{min-width:0}
.share-info-v36 strong,.share-head-v36 h1{overflow-wrap:anywhere}

/* login */
.login-body.login-v14,.login-v14,.login-panel,.login-form-v14,.phone-login-v14{max-width:100%}
.phone-login-v14{margin-left:auto;margin-right:auto}

/* tablet */
@media(max-width:1100px){
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-grid{grid-template-columns:1fr}
  .content{padding:18px}
  .page-head{gap:12px;flex-wrap:wrap}
  .page-head>div,.page-head .page-actions{min-width:0}
  .portal-filter-card-v32 form{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .portal-filter-search-v32{grid-column:1/-1!important}
  .portal-doc-grid-v32{grid-template-columns:repeat(2,minmax(0,1fr))}
  .public-category-grid-v30,.portal-category-grid-v32{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* mobile */
@media(max-width:768px){
  body{font-size:14px}
  .content{padding:14px 12px 24px!important}
  .topbar{height:66px!important;padding:0 12px!important}
  .topbar-title{font-size:13px}
  .topbar-sub{display:none!important}
  .sidebar{width:min(86vw,300px)!important}
  .sidebar .brand{padding-left:14px;padding-right:14px}
  .sidebar-user-copy{min-width:0}
  .sidebar-user-copy strong,.sidebar-user-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

  .page-head{align-items:flex-start!important;flex-direction:column!important}
  .page-head .btn,.page-actions .btn{width:100%}
  .page-actions{width:100%;display:grid!important;grid-template-columns:1fr;gap:8px}

  .stat-grid{grid-template-columns:1fr 1fr!important;gap:10px}
  .stat-card{padding:14px}
  .stat-number{font-size:22px}

  .card-ui .card-header-ui{padding:14px!important;align-items:flex-start!important;gap:10px;flex-direction:column!important}
  .card-ui .card-body-ui{padding:14px!important}
  .card-ui table{min-width:680px}
  .table-responsive{margin-left:-4px;margin-right:-4px}

  .row>[class*="col-"]{margin-bottom:8px}
  .form-control,.form-select,.btn{min-height:42px}
  textarea.form-control{min-height:96px}

  .filter-row,.filters-grid,.archive-filter,.report-filter{display:grid!important;grid-template-columns:1fr!important}
  .filter-row>*,.filters-grid>*,.archive-filter>*,.report-filter>*{width:100%!important;min-width:0!important}

  .archive-tabs-wrap{border-radius:12px}
  .archive-tab{font-size:10px;padding:9px 11px}

  .quota-summary-grid,.quota-grid,.storage-grid,.profile-grid{grid-template-columns:1fr!important}
  .quota-progress-wrap{min-width:0}

  .portal-nav-v32{padding:0 12px!important}
  .portal-brand-v32{min-width:0;gap:8px!important}
  .portal-brand-v32 img{width:42px!important;height:42px!important}
  .portal-brand-v32 strong{font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:165px}
  .portal-brand-v32 span{display:none!important}
  .portal-login-v32{padding:8px 11px!important;font-size:9px!important}
  .portal-hero-inner-v32{padding:38px 14px 54px!important}
  .portal-hero-copy-v32 h1{font-size:34px!important;line-height:1.05!important}
  .portal-hero-copy-v32 p{font-size:11px!important}
  .portal-hero-search-v32{grid-template-columns:20px 1fr auto!important;padding-left:12px!important}
  .portal-hero-search-v32 button{padding:10px!important}
  .portal-hero-search-v32 button span{display:none!important}
  .portal-stats-v32{margin:-20px 12px 0!important;grid-template-columns:1fr 1fr!important}
  .portal-stats-v32>div{padding:13px!important}
  .portal-content-v32{padding:38px 10px!important}
  .portal-category-grid-v32{grid-template-columns:1fr!important}
  .portal-filter-card-v32 form{grid-template-columns:1fr!important}
  .portal-filter-search-v32{grid-column:auto!important}
  .portal-doc-grid-v32{grid-template-columns:1fr!important}
  .portal-pager-v32{align-items:flex-start!important;flex-direction:column!important;gap:10px}
  .portal-pager-v32 .pagination{flex-wrap:wrap}
  .portal-footer-v32{padding:22px 14px!important}

  .share-page-v36{padding:20px 10px!important}
  .share-wrap-v36{width:100%!important}
  .share-brand-v36{justify-content:flex-start!important}
  .share-brand-v36 img{width:82px!important;height:82px!important}
  .share-brand-copy-v36 strong{font-size:18px!important}
  .share-head-v36{padding:20px 17px!important}
  .share-body-v36{padding:17px!important}
  .share-info-grid-v36{grid-template-columns:1fr!important}
  .share-actions-v36{grid-template-columns:1fr!important}
  .share-actions-v36 a{width:100%}
  .share-note-v36{justify-content:flex-start!important}

  .login-form-v14{width:100%!important;padding:20px!important}
  .phone-login-v14{width:min(100%,390px)!important}
}

/* narrow phones */
@media(max-width:480px){
  .stat-grid{grid-template-columns:1fr!important}
  .topbar{padding:0 9px!important}
  .mobile-menu{margin-right:8px!important}
  .content{padding:12px 9px 20px!important}
  .card-ui .card-body-ui{padding:12px!important}
  .card-ui table{min-width:620px}
  .portal-brand-v32 strong{max-width:125px}
  .portal-hero-copy-v32 h1{font-size:30px!important}
  .portal-stats-v32{grid-template-columns:1fr!important}
  .portal-stats-v32>div{border-right:0!important;border-bottom:1px solid #e9f1ec}
  .portal-stats-v32>div:last-child{border-bottom:0}
  .share-brand-v36 img{width:72px!important;height:72px!important}
  .share-brand-copy-v36 span{font-size:8px!important}
  .share-head-v36 h1{font-size:21px!important}
}


/* === v39 refined login phone mockup gradient === */
.login-body.login-v14{
  background:
    radial-gradient(circle at 14% 18%,rgba(91,255,165,.16),transparent 28%),
    radial-gradient(circle at 86% 12%,rgba(41,215,127,.14),transparent 30%),
    linear-gradient(135deg,#021c12 0%,#043824 30%,#076943 62%,#0aad62 100%)!important;
}

.login-v14 .login-visual{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 20% 20%,rgba(111,255,177,.14),transparent 30%),
    radial-gradient(circle at 80% 78%,rgba(38,219,126,.12),transparent 32%),
    linear-gradient(145deg,#03271a 0%,#06492e 38%,#08794a 70%,#0aae63 100%)!important;
}

.login-v14 .login-visual:before{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border-radius:50%;
  left:-170px;
  top:-150px;
  background:radial-gradient(circle,rgba(158,255,201,.15),rgba(158,255,201,0) 68%);
  pointer-events:none;
}

.login-v14 .login-visual:after{
  content:"";
  position:absolute;
  width:560px;
  height:220px;
  border-radius:50%;
  right:-170px;
  bottom:-150px;
  background:linear-gradient(90deg,rgba(255,255,255,.05),rgba(119,255,179,.11));
  transform:rotate(-9deg);
  pointer-events:none;
}

.phone-stage{
  position:relative;
}

.phone-stage:before{
  content:"";
  position:absolute;
  width:360px;
  height:360px;
  border-radius:50%;
  left:50%;
  top:48%;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle,rgba(106,255,173,.19) 0%,rgba(106,255,173,.06) 38%,transparent 72%);
  filter:blur(2px);
  pointer-events:none;
}

.phone-login-v14{
  position:relative;
  background:
    linear-gradient(165deg,rgba(255,255,255,.985) 0%,rgba(248,255,251,.98) 60%,rgba(238,250,243,.985) 100%)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:
    0 32px 70px rgba(0,35,21,.30),
    0 8px 25px rgba(0,72,42,.12),
    inset 0 1px 0 rgba(255,255,255,.92)!important;
}

.phone-login-v14:before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(145deg,rgba(255,255,255,.20),transparent 32%,rgba(27,195,105,.025));
}

.login-form-v14{
  background:
    linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,254,250,.93))!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}

.phone-login-v14 .phone-topbar,
.phone-login-v14 .phone-statusbar{
  background:linear-gradient(90deg,#063b26,#087247 58%,#0aa45d)!important;
  color:#fff!important;
}

@media(max-width:768px){
  .login-body.login-v14{
    background:
      radial-gradient(circle at 50% 0%,rgba(91,255,165,.13),transparent 35%),
      linear-gradient(160deg,#03271a 0%,#06643d 52%,#0aa75f 100%)!important;
  }
  .phone-stage:before{
    width:300px;
    height:300px;
  }
}


/* === v41 login mockup HP: larger logo + full emerald gradient === */
/* Hilangkan kesan putih pada area mockup HP */
.phone-login-v14{
  background:
    radial-gradient(circle at 20% 8%,rgba(127,255,184,.18),transparent 28%),
    radial-gradient(circle at 88% 88%,rgba(71,232,143,.16),transparent 32%),
    linear-gradient(160deg,#043522 0%,#075c39 42%,#09894f 72%,#0bae62 100%)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  box-shadow:0 30px 70px rgba(0,38,22,.34),inset 0 1px 0 rgba(255,255,255,.14)!important;
}

/* Form di dalam mockup tetap hijau lembut, bukan putih */
.login-form-v14{
  background:
    linear-gradient(155deg,rgba(5,74,45,.94) 0%,rgba(7,104,61,.93) 48%,rgba(9,139,78,.92) 100%)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  color:#fff!important;
}
.login-form-v14 .form-label,
.login-form-v14 label,
.login-form-v14 .fw-bold,
.login-form-v14 h1,
.login-form-v14 h2,
.login-form-v14 h3{color:#fff!important}
.login-form-v14 .form-text,
.login-form-v14 .text-muted{color:rgba(231,255,240,.72)!important}
.login-form-v14 .form-control,
.login-form-v14 .form-select{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(255,255,255,.32)!important;
  color:#173d2b!important;
}

/* Perbesar logo di dalam mockup HP tanpa kotak/background putih */
.phone-login-v14 img,
.phone-login img{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.phone-login-v14 .login-logo,
.phone-login-v14 .phone-logo,
.phone-login-v14 .brand-logo,
.phone-login-v14 img[src*="logo"]{
  width:92px!important;
  height:92px!important;
  max-width:none!important;
  object-fit:contain!important;
  padding:0!important;
  border-radius:0!important;
  filter:drop-shadow(0 7px 13px rgba(0,28,17,.30))!important;
}

/* Pastikan overlay lama tidak membuat mockup kembali putih */
.phone-login-v14:before{
  background:linear-gradient(145deg,rgba(255,255,255,.055),transparent 38%,rgba(93,255,163,.04))!important;
}

@media(max-width:768px){
  .phone-login-v14 .login-logo,
  .phone-login-v14 .phone-logo,
  .phone-login-v14 .brand-logo,
  .phone-login-v14 img[src*="logo"]{
    width:84px!important;
    height:84px!important;
  }
}


/* === v42 clean login phone redesign === */
/* Reset konflik v41: logo tidak boleh meluber dari wadah */
.phone-login-v14{
  background:linear-gradient(145deg,#0b3f29,#06291b)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 30px 70px rgba(0,35,21,.34)!important;
}

.phone-login-v14 .phone-screen{
  min-height:640px!important;
  background:
    radial-gradient(circle at 82% 8%,rgba(109,231,161,.18),transparent 28%),
    radial-gradient(circle at 12% 84%,rgba(48,190,117,.11),transparent 34%),
    linear-gradient(165deg,#dff6e9 0%,#eefaf3 45%,#cdebd9 100%)!important;
}

/* Header/brand mockup */
.phone-login-v14 .phone-appbar-centered{
  padding:18px 20px 14px!important;
  gap:5px!important;
  background:transparent!important;
  border-bottom:0!important;
}
.phone-login-v14 .phone-appbar-centered .phone-appmark{
  width:74px!important;
  height:74px!important;
  margin:0 auto 2px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
.phone-login-v14 .phone-appbar-centered .phone-appmark img,
.phone-login-v14 .phone-appmark img,
.phone-login-v14 img[src*="logo"]{
  width:70px!important;
  height:70px!important;
  max-width:70px!important;
  object-fit:contain!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 5px 9px rgba(0,55,31,.20))!important;
}
.phone-login-v14 .phone-brand-center{
  margin-top:0!important;
  position:relative!important;
  z-index:2!important;
}
.phone-login-v14 .phone-appname{
  font-size:15px!important;
  font-weight:900!important;
  line-height:1.15!important;
  color:#075535!important;
  margin:0!important;
}
.phone-login-v14 .phone-appsub{
  font-size:9px!important;
  color:#5d7468!important;
  margin-top:3px!important;
  line-height:1.2!important;
}

/* Form dibuat terang-hijau, bukan putih dan bukan hijau gelap */
.phone-login-v14 .login-form-v14{
  margin:6px 14px 15px!important;
  padding:20px 20px 16px!important;
  border-radius:20px!important;
  background:
    linear-gradient(155deg,rgba(238,250,243,.96) 0%,rgba(220,244,230,.94) 100%)!important;
  border:1px solid rgba(7,115,67,.14)!important;
  box-shadow:0 13px 30px rgba(5,76,45,.10)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  color:#244738!important;
}
.phone-login-v14 .login-form-v14 .form-label,
.phone-login-v14 .login-form-v14 label{
  color:#24503b!important;
  font-weight:750!important;
}
.phone-login-v14 .login-form-v14 .form-control{
  min-height:48px!important;
  background:rgba(255,255,255,.90)!important;
  color:#173d2b!important;
  border:1px solid #d1e7da!important;
  border-radius:13px!important;
  box-shadow:none!important;
}
.phone-login-v14 .login-form-v14 .form-control:focus{
  background:#fff!important;
  border-color:#20a364!important;
  box-shadow:0 0 0 3px rgba(32,163,100,.10)!important;
}
.phone-login-v14 .input-icon>i{
  color:#789086!important;
}
.phone-login-v14 .password-toggle{
  color:#6e8479!important;
}

/* Captcha kembali rapi */
.phone-login-v14 .captcha-box-v20{
  display:grid!important;
  grid-template-columns:112px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:end!important;
  padding:10px!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.58)!important;
  border:1px solid #d2e7da!important;
}
.phone-login-v14 .captcha-question{
  min-width:0!important;
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  background:linear-gradient(135deg,#087344,#0ca85f)!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
.phone-login-v14 .captcha-box-v20 .form-label{
  margin-bottom:5px!important;
}

/* Tombol dan footer keamanan */
.phone-login-v14 .login-submit-v14{
  height:50px!important;
  border-radius:13px!important;
  background:linear-gradient(135deg,#087344,#0cb765)!important;
  box-shadow:0 9px 20px rgba(8,115,68,.18)!important;
}
.phone-login-v14 .phone-security{
  margin-top:14px!important;
  gap:14px!important;
  color:#6b8377!important;
  font-size:8px!important;
}
.phone-login-v14 .phone-security i{color:#0a8b4d!important}

/* status dan home indicator */
.phone-login-v14 .phone-status{
  color:#123d2d!important;
}
.phone-login-v14 .phone-homebar{
  background:#1b5d3e!important;
  opacity:.75!important;
}

/* mobile narrow */
@media(max-width:600px){
  .phone-login-v14 .phone-screen{min-height:620px!important}
  .phone-login-v14 .phone-appbar-centered{padding:15px 18px 11px!important}
  .phone-login-v14 .phone-appbar-centered .phone-appmark{
    width:66px!important;height:66px!important
  }
  .phone-login-v14 .phone-appbar-centered .phone-appmark img,
  .phone-login-v14 .phone-appmark img,
  .phone-login-v14 img[src*="logo"]{
    width:62px!important;height:62px!important;max-width:62px!important
  }
  .phone-login-v14 .login-form-v14{
    margin:4px 12px 14px!important;
    padding:18px 17px 15px!important
  }
  .phone-login-v14 .captcha-box-v20{
    grid-template-columns:105px minmax(0,1fr)!important
  }
}
