:root{--paper:#fffcf4;--surface:#ffffff;--ink:#28251b;--muted:#77705d;--line:#e9e2cf;--forest:#806000;--link:#806000;--lime:#ffe89a;--soft:#fff4cf;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--paper);color:var(--ink)}body{min-height:100vh}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b58000;outline-offset:2px}.brand-logo{display:block;width:36px;height:36px;flex:0 0 36px;object-fit:contain;border-radius:9px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:700;letter-spacing:-.3px}.mark{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--lime);color:var(--forest);font-family:Georgia,serif;font-size:21px}.public-top{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,6vw,90px);background:var(--surface)}.public-top nav{display:flex;align-items:center;gap:24px;font-size:14px}.language-control select,.topbar-controls select{padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}.btn,.button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 16px;border:1px solid transparent;border-radius:7px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.3;cursor:pointer;text-decoration:none}.btn-primary,.button{background:var(--forest);color:#fff}.btn-primary:hover,.button:hover{background:#9a7400;text-decoration:none}.btn-secondary{background:var(--surface);color:var(--link);border-color:var(--line)}.btn-danger{background:#9c3e35;color:white}.hero{max-width:1160px;margin:auto;padding:76px 30px 62px;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.hero h1{font:500 clamp(44px,5vw,64px)/1.08 Georgia,serif;letter-spacing:-1.8px;max-width:540px;margin:20px 0}.hero p,.public-content>p{color:var(--muted);max-width:620px;font-size:17px}.eyebrow{color:#8a6700;font-size:11px;font-weight:750;letter-spacing:1.5px}.landscape{height:320px;border-radius:12px;overflow:hidden;background:#f3e4b5}.landscape svg{width:100%;height:100%}.home-points{max-width:1160px;margin:0 auto;padding:26px 30px 64px;display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.home-points article{border-top:1px solid var(--line);padding-top:14px}.home-points article>span{font-size:12px;color:#7b6b3d}.home-points h2{font:500 23px Georgia,serif;margin:11px 0}.home-points p{margin:0;color:var(--muted)}.public-content{max-width:760px;min-height:55vh;margin:64px auto 88px;padding:0 24px}.public-content h1{font:500 38px/1.15 Georgia,serif;letter-spacing:-.7px;margin:14px 0}.public-content>p{font-size:16px}.public-footer{border-top:1px solid var(--line);padding:26px clamp(20px,6vw,90px);display:flex;align-items:center;gap:24px;flex-wrap:wrap;color:var(--muted);font-size:13px;background:var(--surface)}.public-footer>div{display:flex;gap:16px;flex-wrap:wrap;margin-left:auto}.public-footer a{color:var(--muted)}.form{display:grid;gap:17px;margin-top:28px}.form label,.form-field{display:grid;gap:7px;font-weight:600;font-size:14px}.field,.form input:not([type=hidden]):not([type=checkbox]),.form textarea{width:100%;min-height:42px;padding:10px 12px;border:1px solid #e5dcc3;border-radius:6px;background:var(--surface);color:var(--ink);font:inherit}.form textarea{resize:vertical}.consent-field{display:flex!important;align-items:flex-start;gap:9px!important}.consent-field input[type=checkbox]{width:auto!important;min-height:0!important;margin:5px 0 0;padding:0}.contact-form{max-width:550px}.auth-content{max-width:480px}.auth-content>p{font-size:14px}.trap{position:absolute!important;left:-10000px!important}.notice{background:#fff4cf;border-radius:7px;padding:12px 15px}.app-body{background:var(--paper)}.app-frame{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;background:var(--forest);color:#fffae9;padding:24px 16px;display:flex;flex-direction:column}.sidebar .brand{color:white;font-size:15px}.sidebar .mark{flex:none}.side-nav{display:grid;gap:5px;margin-top:34px}.side-nav a,.sidebar-bottom a{color:#f4e7c1;padding:10px 12px;border-radius:7px;font-size:14px}.side-nav a:hover,.sidebar-bottom a:hover{background:#ffffff15;text-decoration:none}.side-nav a.active{background:#ffffff20;color:var(--lime);font-weight:650}.sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff2e;padding-top:14px}.app-column{min-width:0;display:flex;flex-direction:column;min-height:100vh}.app-topbar{height:62px;display:flex;align-items:center;gap:12px;padding:0 28px;border-bottom:1px solid var(--line);background:var(--surface)}.topbar-title{font-weight:650}.topbar-controls{display:flex;gap:13px;margin-left:auto}.topbar-controls label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.nav-toggle{display:none;border:0;background:transparent;color:var(--ink);font-size:21px;padding:5px}.app-main{width:100%;max-width:1240px;min-width:0;margin:0 auto;padding:30px 34px;flex:1;overflow-wrap:anywhere}.app-main img,.app-main video,.app-main audio,.public-content img,.public-content video,.public-content audio{max-width:100%}.app-footer{display:flex;gap:18px;padding:14px 34px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.app-footer a{color:var(--muted)}.page{width:100%;min-width:0;overflow-wrap:anywhere}.page-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 23px;min-width:0;overflow-wrap:anywhere}.page-header h1{font-size:30px;line-height:1.2;margin:0;letter-spacing:-.5px}.page-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.panel{background:var(--surface);border:1px solid var(--line);border-radius:9px;overflow:hidden;min-width:0}.panel-header{padding:16px 20px;border-bottom:1px solid var(--line);font-weight:650;overflow-wrap:anywhere}.panel-body{padding:20px;min-width:0;overflow-wrap:anywhere}.grid{display:grid;gap:18px;min-width:0}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-field,.field{font-size:14px}.badge{display:inline-flex;padding:3px 9px;border-radius:99px;background:var(--soft);color:var(--link);font-size:12px;font-weight:650}.muted{color:var(--muted)}.empty-state{text-align:center;padding:34px 20px;color:var(--muted)}.table-wrap{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;text-align:left}.data-table th,.data-table td{padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap}.data-table th{font-size:12px;color:var(--muted);font-weight:650}.media-stage{min-height:220px;border-radius:8px;background:#f4eedb;display:grid;place-items:center}.file-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0;padding:12px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.file-list{min-width:0}.file-row>*{min-width:0;overflow-wrap:anywhere}.notice{overflow-wrap:anywhere}progress{width:100%;max-width:100%}.media-stage img,.media-stage video{display:block;width:auto;max-width:100%;height:auto;max-height:70vh;object-fit:contain}.media-stage audio,.app-main audio{width:100%;max-width:100%}.nav-close{display:none}.workspace aside .active{color:var(--lime)}.workflow-list{padding:0;list-style:none;border-top:1px solid var(--line)}.workflow-list li{padding:15px 2px;border-bottom:1px solid var(--line);display:grid;gap:4px}.workflow-list span{color:var(--muted)}.legal-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:14px}
html[data-theme="dark"]{--paper:#211e16;--surface:#2c271b;--ink:#fff5d9;--muted:#c6b891;--line:#50472d;--forest:#806000;--link:#f1cc54;--soft:#423819;color-scheme:dark}html[data-theme="dark"] .btn-primary{background:#aa8200;color:#fff}html[data-theme="dark"] .landscape{background:#423819}html[data-theme="dark"] .media-stage{background:#3b321c}html[data-theme="dark"] .notice{background:#423819;color:#fff4d3}html[data-theme="dark"] .badge{color:#f5e7b4}html[data-theme="dark"] .sidebar a{color:#f4e7c1}html[data-theme="dark"] .sidebar .brand{color:#fff}
@media(prefers-color-scheme:dark){html:not([data-theme]){--paper:#211e16;--surface:#2c271b;--ink:#fff5d9;--muted:#c6b891;--line:#50472d;--link:#f1cc54;--soft:#423819;color-scheme:dark}html:not([data-theme]) .btn-primary{background:#aa8200;color:#fff}html:not([data-theme]) .sidebar a{color:#f4e7c1}html:not([data-theme]) .sidebar .brand{color:#fff}}
@media(max-width:850px){.app-frame{grid-template-columns:1fr}.sidebar{position:fixed;z-index:12;left:0;top:0;width:250px;transform:translateX(-105%);transition:transform .2s;box-shadow:12px 0 30px #0002}.app-frame.nav-open .sidebar{transform:translateX(0)}.nav-toggle{display:block;position:relative;z-index:13}.nav-close{display:block;position:absolute;right:12px;top:15px;border:0;background:transparent;color:white;font-size:26px;line-height:1;padding:5px 9px;cursor:pointer}.app-main{padding:24px 22px}.public-top{padding:0 20px}.public-top nav{gap:12px}.hero{gap:34px;padding-top:55px}.landscape{height:260px}}
@media(max-width:600px){.public-top{height:auto;min-height:68px;align-items:flex-start;padding:14px 16px;gap:10px;flex-wrap:wrap}.public-top nav{width:100%;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:13px}.hero{grid-template-columns:1fr;padding:44px 22px 35px;gap:27px}.hero h1{font-size:46px}.landscape{height:220px}.home-points{grid-template-columns:1fr;gap:18px;padding:20px 22px 42px}.public-content{margin:42px auto 60px;padding:0 20px}.public-content h1{font-size:33px}.public-footer{padding:22px 20px}.public-footer>div{margin:0;width:100%}.grid-2{grid-template-columns:1fr}.app-topbar{padding:0 14px}.topbar-controls{gap:6px}.topbar-controls label{font-size:0}.topbar-controls select{font-size:12px;padding:5px}.app-footer{padding:13px 20px}.page-header{align-items:flex-start;flex-direction:column}.page-header h1{font-size:28px}}

/* Shared app panel refinements */
.panel-header h2{margin:0;font-size:18px;line-height:1.4}
.panel-body>form{display:grid;gap:14px}
.panel-body>form label,.panel-body>form .form-field{display:grid;gap:7px}
.panel-body>form input:not([type=checkbox]):not([type=radio]),.panel-body>form select,.panel-body>form textarea{margin-top:2px}
@media(prefers-color-scheme:dark){
    html:not([data-theme]) .notice{background:#423819;color:#fff4d3}
    html:not([data-theme]) .media-stage{background:#3b321c}
    html:not([data-theme]) .landscape{background:#423819}
    html:not([data-theme]) .badge{color:#f5e7b4}
}

/* Native shared dialogs */
.app-dialog{width:calc(100% - 32px);max-width:620px;max-height:90dvh;margin:auto;padding:0;overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
.app-dialog::backdrop{background:rgba(15,24,18,.56)}
.dialog-header,.dialog-body{padding:18px 22px}
.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line)}
.dialog-header h2{margin:0;font-size:18px;line-height:1.4}
.dialog-header [data-dialog-close]{flex:none;min-width:36px;min-height:36px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer}
.dialog-body form,.app-dialog>form{display:grid;gap:14px}
.dialog-body form label,.app-dialog>form label{display:grid;gap:7px;font-size:14px;font-weight:600}
.dialog-body input:not([type=checkbox]):not([type=radio]),.dialog-body select,.dialog-body textarea,.app-dialog>form input:not([type=checkbox]):not([type=radio]),.app-dialog>form select,.app-dialog>form textarea{width:100%;min-height:40px;padding:9px 11px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit}
.dialog-body textarea,.app-dialog>form textarea{resize:vertical}
.dialog-body label.consent-field,.app-dialog>form label.consent-field{display:flex;align-items:center;gap:9px}
.dialog-body label.consent-field input[type=checkbox],.app-dialog>form label.consent-field input[type=checkbox]{flex:none;width:auto;min-height:0;margin:0}
.dialog-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;padding:14px 22px;border-top:1px solid var(--line)}
.dialog-actions button:disabled,.dialog-actions [aria-disabled="true"]{opacity:.48;cursor:not-allowed}

.admin-settings{max-width:850px}.admin-settings .form{display:grid;gap:12px;margin:24px 0}.admin-setting-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 20px;border:1px solid var(--line,#ddd);border-radius:16px;background:var(--surface,#fff)}.admin-setting-row span{display:grid;gap:6px}.admin-setting-row small{font-size:.9rem;opacity:.76}.admin-setting-row input[type=checkbox]{width:22px;height:22px;flex:none;accent-color:var(--accent,#b38b00)}
.admin-role-form{display:flex;align-items:center;gap:8px}.admin-role-form select{padding:8px}.admin-table-wrap{overflow-x:auto}.admin-activity table{width:100%;border-collapse:collapse;margin:16px 0 32px}.admin-activity th,.admin-activity td{padding:10px;border-bottom:1px solid var(--line,#ddd);text-align:left}
