/* PW Manager v5.0 beta: interface layer, backend schema unchanged. */
.v5-layout{grid-template-columns:235px minmax(0,1fr);max-width:1630px}
.v5-sidebar{background:#0b1728;padding:23px 13px;gap:0;position:sticky;top:0;height:100vh;overflow-y:auto}
.v5-logo{font-size:20px;letter-spacing:-.04em;margin:0 0 36px 6px}.v5-logo small{display:block;font-size:10px;font-weight:750;color:#67b3f4;letter-spacing:.15em;margin-top:2px}
.v5-side-caption{font-size:10px;font-weight:800;letter-spacing:.15em;color:#7189a7;margin:0 12px 13px}
.v5-main-nav{display:grid;gap:5px}.v5-main-nav .nav-link{width:100%;border-radius:11px;padding:13px 12px;justify-content:flex-start;font-size:14px;font-weight:750;gap:12px}
.v5-main-nav .nav-link.active{background:#1c3455;border:1px solid #3d6699}
.v5-subheading{margin-top:29px;margin-bottom:8px}.v5-side-sub{display:grid;gap:3px}
.v5-subtab{border:1px solid transparent;background:transparent;padding:10px 13px;border-radius:9px;color:#94abc8;text-align:left;white-space:nowrap;font-weight:650;font-size:13px}
.v5-subtab.active{color:#eaf6ff;background:#233957;border-color:#365c82}.v5-subtab:hover{color:#fff;background:#213248}
.v5-sidebar-foot{margin-top:auto;padding:24px 11px 10px;display:grid;gap:12px;color:#8ba3c2;font-size:11px;line-height:1.6}
.v5-settings-link{padding:0;border:0;background:none;color:#a3bbd6;text-align:left;font-size:12px}.v5-settings-link:hover{color:#fff}
.v5-content{max-width:none;padding:31px clamp(20px,3.5vw,52px) 50px}
.v5-header{margin-bottom:20px}.v5-header h1{font-size:27px;letter-spacing:-.035em}.v5-version{color:#76d5bc;margin-left:10px;font-weight:750;font-size:10px}
.v5-context-nav{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 26px;border-bottom:1px solid #2b4059;padding-bottom:13px}
.v5-context-nav .v5-subtab{padding:8px 12px;font-size:12px}
.v5-welcome{border:1px solid #2c517c;background:linear-gradient(110deg,#152d4b,#102136 72%);padding:24px 26px;border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:17px}
.v5-section-label{font-size:10px;font-weight:850;color:#73bde8;letter-spacing:.16em}
.v5-welcome h2{margin:9px 0 7px;font-size:23px;letter-spacing:-.025em}.v5-welcome p{margin:0;color:#9eb8d6;font-size:13px;max-width:560px;line-height:1.6}
.v5-welcome-actions{display:flex;gap:8px;flex-wrap:wrap}
.v5-toolbar-card{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(130px,.8fr) minmax(160px,1.5fr);gap:12px;align-items:end;margin-bottom:16px}
.v5-person-select{display:grid;gap:6px;color:#a2b8d3;font-size:11px;font-weight:800}.v5-person-select .field,.v5-person-select .field-select{height:43px}
.v5-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}
.v5-kpi{background:#121f30;border:1px solid #2f425b;border-radius:15px;padding:17px 18px;display:grid;gap:5px;min-width:0}
.v5-kpi span{font-size:11px;color:#9cb3ce;font-weight:700}.v5-kpi strong{font-size:27px;font-weight:850;color:#eaf3ff;font-variant-numeric:tabular-nums;line-height:1.2}.v5-kpi small{font-size:11px;color:#7790b0;overflow-wrap:anywhere}
.v5-stock-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,.94fr);gap:17px;align-items:start}
.v5-stock-panel{padding:0;overflow:hidden;background:#111f31}.v5-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 19px 13px}
.v5-panel-head h3{font-size:16px;margin:0 0 4px}.v5-panel-head p{margin:0;color:#829dbd;font-size:12px}
.v5-stock-scroll{max-height:570px;overflow:auto;scrollbar-color:#324761 transparent}
.v5-stock-table{width:100%;border-collapse:collapse;font-size:12px}.v5-stock-table th{position:sticky;top:0;background:#17293f;text-align:right;color:#829dbd;font-size:10px;font-weight:700;padding:12px 9px;border-bottom:1px solid #36506a;white-space:nowrap}
.v5-stock-table th:first-child{text-align:left;padding-left:18px}.v5-stock-table td{padding:10px 9px;border-bottom:1px solid #243950;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.v5-stock-table td:first-child{padding-left:16px;text-align:left;white-space:normal;min-width:160px}.v5-stock-table tr:hover{background:#1a3049}.v5-stock-table tr[hidden]{display:none}.v5-unknown{color:#657e9e}
.v5-ledger-btn{font-size:11px;border:0;background:transparent;color:#6fb8fa;font-weight:750;white-space:nowrap;padding:7px 1px}.v5-ledger-btn:hover{text-decoration:underline}
.v5-footnote{font-size:11px;color:#8da8c8;line-height:1.65;padding:14px 18px;margin:0}
.v5-goals-panel{background:#111f31;border:1px solid #30445e;border-radius:16px;padding:0 4px 12px}.v5-goal-mini{border-top:1px solid #263b55;padding:15px}.v5-goal-title{display:flex;gap:9px;align-items:center}.v5-goal-title>div{display:grid;gap:4px;min-width:0}.v5-goal-title b{font-size:12px;line-height:1.4}.v5-goal-title small{color:#8098b9;font-size:11px}.v5-goal-progress{margin:13px 0 7px;background:#243851;height:6px;border-radius:999px;overflow:hidden}.v5-goal-progress span{display:block;height:100%;background:#58caaf;border-radius:999px}.v5-goal-meta{display:flex;justify-content:space-between;gap:9px;color:#8facca;font-size:10px}.v5-goal-meta span:last-child{text-align:right}.v5-simple-link{border:none;background:none;color:#72b8f9;white-space:nowrap;font-size:12px;font-weight:750;padding:4px}.v5-shortcuts{display:flex;gap:8px;flex-wrap:wrap;padding:11px 15px 5px}.v5-target-note{font-size:11px;line-height:1.55;color:#8ba3c2;padding:12px 15px}.v5-empty{color:#8ba5c5;font-size:13px;padding:16px}.v5-tips{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:18px 4px;color:#9ab1d1;font-size:12px}.v5-tips b{color:#e0eaff;margin-right:6px}.v5-arrow{color:#58caaf;font-size:20px}
.v5-ledger-modal h2{display:flex;align-items:center;gap:8px;font-size:20px;overflow-wrap:anywhere}.v5-ledger-modal .small{line-height:1.5}.v5-ledger-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:16px 0}.v5-ledger-totals>div{padding:9px;background:#213551;border-radius:9px;display:grid;gap:6px}.v5-ledger-totals span{font-size:10px;color:#93abc7}.v5-ledger-totals strong{font-size:15px}.v5-ledger-list{max-height:350px;overflow-y:auto}.v5-ledger-line{display:flex;align-items:start;justify-content:space-between;gap:12px;border-top:1px solid #30445e;padding:12px 3px}.v5-ledger-line strong{font-size:12px}.v5-ledger-line small{display:block;color:#91a7c4;font-size:10px;margin-top:4px}.v5-ledger-amount{display:grid;justify-items:end;gap:5px;white-space:nowrap;font-size:12px}
@media(max-width:1120px){.v5-stock-grid{grid-template-columns:1fr}.v5-goals-panel{display:block}.v5-content{padding:23px}}
@media(max-width:760px){.v5-layout{display:block}.v5-sidebar{display:none}.v5-content{padding:18px 12px 92px}.v5-header h1{font-size:23px}.v5-context-nav{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;margin-bottom:15px}.v5-context-nav .v5-subtab{flex-shrink:0}.v5-mobile-nav{justify-content:space-around;overflow:visible;gap:0}.v5-mobile-nav .nav-link{min-width:0;width:auto;flex:1 1 20%;font-size:10px}.v5-mobile-nav .nav-emoji{font-size:21px}.v5-welcome{padding:17px;display:grid;gap:17px}.v5-welcome h2{font-size:20px}.v5-toolbar-card{grid-template-columns:repeat(2,minmax(0,1fr))}.v5-search-label{grid-column:1/-1}.v5-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v5-kpi{padding:12px}.v5-kpi strong{font-size:23px}.v5-stock-table{font-size:11px}.v5-stock-table th{font-size:10px}.v5-stock-scroll{overflow-x:auto}.v5-stock-table{min-width:580px}.v5-tips{gap:6px;font-size:11px}.v5-ledger-totals{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* compact v5 home */
.v5-home-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:17px;align-items:start}
.v5-home-grid>.card{padding:3px 8px 15px;min-width:0}.v5-home-actions>.v5-simple-link{margin:16px 12px 5px}
.v5-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:12px}
.v5-action-grid button{border:1px solid #2f4969;background:#172b45;text-align:left;color:#e6f2fc;border-radius:13px;display:grid;gap:8px;padding:17px 16px;position:relative;min-height:103px}
.v5-action-grid button:hover{background:#1f3a59;border-color:#568bcc}.v5-action-grid b{font-size:14px}.v5-action-grid span{font-size:11px;color:#92acc9;line-height:1.4}.v5-action-grid i{font-style:normal;position:absolute;right:12px;top:12px;color:#62d0b5}
.v5-recent-run{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 17px;border-top:1px solid #263d59}
.v5-recent-run>div{display:grid;gap:5px}.v5-recent-run b{font-size:13px}.v5-recent-run span{color:#829fbe;font-size:11px}.v5-recent-run strong{font-size:11px;color:#8faccc;white-space:nowrap}
.v5-recent-bottom{margin:10px 15px 0;background:#1b3048;border-radius:10px;padding:12px 14px;display:flex;justify-content:space-between;gap:9px;font-size:11px;color:#92abc8}.v5-recent-bottom b{color:#a7e9d1;font-size:12px}
@media(max-width:1120px){.v5-home-grid{grid-template-columns:1fr}}
@media(max-width:760px){.v5-action-grid{grid-template-columns:1fr 1fr;gap:8px}.v5-action-grid button{padding:13px 12px;min-height:94px}.v5-action-grid b{font-size:12px}.v5-home-grid>.card{padding:2px 6px 13px}}

/* v5.0.1 — per-character farm entry; no horizontal-scroll matrix */
.v51-quick{background:#0e1a2b;border:1px solid #2d4869;border-radius:18px;overflow:hidden;margin:22px 0 30px}
.v51-intro{padding:25px 28px 19px;display:flex;align-items:start;justify-content:space-between;gap:20px;background:linear-gradient(120deg,#17304f 0%,#102035 90%);border-bottom:1px solid #2b4564}
.v51-person-kicker{font-size:10px;font-weight:800;letter-spacing:.13em;color:#78b6ee}.v51-intro h2{font-size:25px;letter-spacing:-.03em;line-height:1.2;margin:9px 0 8px}.v51-intro p{margin:0;font-size:13px;color:#a8beda;line-height:1.5}.v51-top-mark{white-space:nowrap;border:1px solid #376386;background:#203958;border-radius:999px;padding:9px 13px;font-size:11px;font-weight:750;color:#b9d8f8}
.v51-quick #farm-bulk-form{gap:0;margin:0}.v51-visit-fields{display:grid;grid-template-columns:minmax(160px,1.5fr) minmax(130px,1fr) minmax(120px,.7fr) minmax(90px,.6fr);gap:14px;padding:22px 28px;background:#121f32;border-bottom:1px solid #2a3f59}
.v51-visit-fields .field,.v51-visit-fields .field-select{width:100%;max-width:100%;height:44px;background:#0c1829}
.v51-workbench{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(255px,.85fr);align-items:start;min-width:0}
.v51-editor{padding:25px 26px;min-width:0}.v51-navigation-title{display:flex;justify-content:space-between;gap:12px;align-items:center}.v51-navigation-title h3{font-size:18px;margin:7px 0 16px}.v51-hint{font-size:11px;color:#8ba7c8;margin-bottom:10px}
.v51-person-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 23px}
.v51-person-tile{min-width:0;border:1px solid #344b65;background:#14243a;color:#bbcee5;min-height:56px;border-radius:10px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;padding:9px 11px;text-align:left;transition:background .13s,border .13s}
.v51-person-tile:hover{background:#203753;border-color:#507ba9}.v51-person-tile.active{background:#245185;border-color:#66a8ec;color:#fff;box-shadow:0 0 0 1px #5088c1 inset}.v51-person-tile.v51-off{opacity:.59}.v51-person-tile-name{font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.v51-person-count{font-size:10px;color:#9bbad8;font-weight:750}.v51-person-tile.active .v51-person-count{color:#a7e8d0}
.v51-active-editor{border:1px solid #365372;border-radius:15px;background:#14263d;overflow:hidden}
.v51-person-panel[hidden]{display:none!important}.v51-person-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:20px 20px 16px;border-bottom:1px solid #34506a}
.v51-person-top h3{margin:5px 0;font-size:22px;letter-spacing:-.02em}.v51-main-tag{display:inline-flex;font-size:10px;vertical-align:middle;color:#84e2c8;border:1px solid #3c9a82;padding:4px 7px;margin-left:7px;border-radius:7px;letter-spacing:0;font-weight:750}.v51-person-top p{margin:0;font-size:12px;color:#8ba8c9;line-height:1.45}
.v51-participate{display:flex;align-items:center;gap:7px;white-space:nowrap;color:#c8d9ed;font-weight:750;font-size:11px;cursor:pointer}.v51-participate input{accent-color:#69b5f3;width:17px;height:17px}
.v51-person-panel.farm-bulk-inactive .v51-material-grid{opacity:.45}.v51-person-panel.farm-bulk-inactive .v51-person-top{background:#1c2536}
.v51-material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:17px}.v51-material{min-width:0;display:flex;justify-content:space-between;align-items:center;gap:8px;background:#0e1b2e;border:1px solid #314861;border-radius:11px;padding:11px 12px;min-height:65px;cursor:text}.v51-material:hover{border-color:#537da7;background:#152741}.v51-material.farm-has-drop{background:#15372e;border-color:#39846e}.v51-material-info{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.v51-material-info>span{min-width:0;display:grid;gap:4px}.v51-material-info strong{font-size:12px;line-height:1.32;font-weight:750;color:#ebf4ff;overflow-wrap:anywhere}.v51-material-info small{font-size:10px;color:#839fbd}.v51-material .field{width:74px;flex:0 0 74px;max-width:74px;padding:7px 10px;text-align:right;font-size:16px;font-weight:850;height:39px;background:#101e2e;border:1px solid #3e5979;border-radius:9px;font-variant-numeric:tabular-nums}.v51-material .field:focus{border-color:#7fbefc;outline:2px solid #315983;outline-offset:0}.v51-material.farm-has-drop .field{border-color:#3da37f;color:#b7f3d5}.v51-no-items{padding:24px;color:#aabbd1;font-size:13px}
.v51-person-foot{padding:13px 17px 15px;display:flex;justify-content:space-between;align-items:center;gap:14px;border-top:1px solid #324c68}.v51-person-figure{font-size:12px;color:#a5bbd5}.v51-step-actions{display:flex;gap:8px}.v51-step-actions .btn{font-size:12px;padding:10px 12px;white-space:nowrap}
.v51-summary{background:#0b1829;border-left:1px solid #2a4662;min-height:100%;padding:26px 21px;min-width:0}.v51-summary>h3{margin:8px 0 18px;font-size:19px}.v51-summary-stat{padding:17px;background:#183049;border:1px solid #32516d;border-radius:13px;display:grid;gap:7px}.v51-summary-stat b{font-size:20px;color:#91eed2;letter-spacing:-.025em}.v51-summary-stat span{font-size:11px;color:#9bb8d4}
.v51-summary-list{margin-top:19px;display:grid;gap:7px}.v51-summary-person{border:1px solid #2f4864;background:#13243a;border-radius:11px;padding:11px;color:#dceafa;display:flex;justify-content:space-between;text-align:left;gap:7px}.v51-summary-person:hover{background:#1b3654;border-color:#518ac5}.v51-summary-person>span{min-width:0;display:grid;gap:4px}.v51-summary-person b{font-size:12px}.v51-summary-person small{font-size:10px;color:#97aec9;line-height:1.5;overflow-wrap:anywhere}.v51-summary-person>strong{color:#8de6c6;white-space:nowrap;font-size:11px}.v51-summary-empty{font-size:12px;color:#91abc9;line-height:1.7;margin:0}.v51-summary-bottom{margin-top:20px;padding:14px 0;border-top:1px solid #304963;font-size:11px;color:#89a7c7;line-height:1.65}
.v51-footer{padding:18px 26px 20px;background:#112037;border-top:1px solid #2b455f}.v51-footer-upper{display:flex;gap:16px;flex-wrap:wrap;align-items:center;padding-bottom:15px}.v51-real-check{font-size:13px;color:#cce7ff}.v51-real-check input{width:17px;height:17px;accent-color:#64b8fd}.v51-existing{font-size:11px;color:#9eb6d4}.v51-more{border-top:1px solid #304960;padding:13px 0;margin:0}.v51-more summary{cursor:pointer;font-size:12px;color:#9fcaff}.v51-more[open]{padding-bottom:20px}.v51-savebar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:16px}.v51-savebar>div{display:flex;flex-direction:column;gap:6px;align-items:start}.v51-savebar .small{color:#83a2c0}.v51-clear{border:0;background:transparent;color:#9cb9d5;padding:2px 0;font-size:11px;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.v51-save{padding:15px 24px;font-weight:850;font-size:14px}
.v51-farm-details{margin:20px 0 25px;background:#0e1c30;border:1px solid #2e4866;border-radius:15px;overflow:hidden}.v51-farm-details>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:17px 22px}.v51-farm-details>summary::-webkit-details-marker{display:none}.v51-farm-details>summary span:first-child{display:grid;gap:4px}.v51-farm-details>summary strong{font-size:14px;color:#dceafa}.v51-farm-details>summary small{font-size:11px;color:#92acc8}.v51-expand-arrow{font-size:20px;color:#89bcef}.v51-farm-details[open] .v51-expand-arrow{transform:rotate(180deg)}.v51-farm-details-inner{padding:14px 18px 25px;border-top:1px solid #2d4562}.v51-farm-details-inner>.section-top{margin-top:30px}
@media(max-width:1300px){.v51-workbench{grid-template-columns:minmax(0,1fr)}.v51-summary{border-left:0;border-top:1px solid #2f4a64;min-height:auto}.v51-summary-list{grid-template-columns:repeat(2,minmax(0,1fr))}.v51-person-tiles{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:800px){.v51-intro{padding:20px 16px;display:block}.v51-top-mark{display:inline-block;margin-top:14px}.v51-visit-fields{grid-template-columns:repeat(2,minmax(0,1fr));padding:17px 14px;gap:10px}.v51-editor{padding:17px 12px}.v51-person-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:17px}.v51-person-tile{min-height:50px;padding:8px 9px}.v51-person-top{padding:17px 13px;align-items:start;flex-direction:column}.v51-material-grid{grid-template-columns:1fr;padding:11px;gap:8px}.v51-material{min-height:59px}.v51-person-foot{padding:12px;flex-wrap:wrap}.v51-step-actions{width:100%}.v51-step-actions .btn{flex:1}.v51-summary{padding:21px 14px}.v51-summary-list{grid-template-columns:1fr}.v51-footer{padding:15px 14px}.v51-savebar{flex-direction:column;align-items:stretch}.v51-save{width:100%}.v51-navigation-title h3{font-size:16px}.v51-hint{font-size:10px}}
@media(min-width:801px) and (max-width:1100px){.v51-material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.v51-mainbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #2b4059;border-radius:13px;background:#111e31;padding:14px 18px;margin:4px 0 18px}.v51-mainbar-info{display:flex;align-items:center;gap:11px;flex-wrap:wrap}.v51-mainbar-info>span{font-size:12px;color:#93abc6}.v51-mainbar-info b{font-size:14px;color:#90ead0}.v51-mainbar-info small{font-size:11px;color:#8ba7c4}.v51-footnote{border-top:1px solid #263c56;padding:14px 4px;color:#8ba4c1;font-size:11px;line-height:1.6;margin-bottom:24px}@media(max-width:800px){.v51-mainbar{align-items:flex-start}.v51-mainbar-info{display:grid;gap:5px}.v51-mainbar .btn{white-space:nowrap}}
