:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#242622;font-synthesis:none;text-rendering:optimizelegibility;--ink:#242622;--muted:#777a74;--line:#e7e4dd;--paper:#fffefa;--accent:#557a69;--accent-dark:#3c6251;--accent-soft:#eaf1eb;--warm:#ba704f;--shadow:0 16px 48px #2e2f2714;background:#f6f4f0;font-family:Inter,Noto Sans JP,Yu Gothic UI,Meiryo,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #557a697a}.entry-shell,.loading-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.entry-card{background:var(--paper);width:min(100%,480px);box-shadow:var(--shadow);text-align:center;border:1px solid #e7e4dde6;border-radius:26px;padding:42px 40px 36px}.brand-mark{background:var(--accent-soft);width:56px;height:56px;color:var(--accent-dark);border-radius:18px;place-items:center;margin:0 auto 22px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:29px;font-weight:700;display:grid}.brand-mark.small{border-radius:11px;width:34px;height:34px;margin:0;font-size:19px}.entry-brand-icon{border-radius:12px;margin:0 auto 16px;display:block}.entry-product-name{color:#103747;letter-spacing:.04em;margin:0 0 12px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:24px;font-weight:700}.eyebrow{color:var(--muted);letter-spacing:.15em;margin:0 0 9px;font-size:10px;font-weight:700}.entry-card h1{color:#103747;letter-spacing:.01em;margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:19px;line-height:1.65}.entry-copy{color:#686b64;margin:16px 0 26px;font-size:14px;line-height:1.9}.entry-actions{gap:10px;display:grid}.button{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 17px;font-size:13px;font-weight:650;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.button:not(:disabled):active{transform:translateY(1px)}.button-primary{color:#fff;background:var(--accent)}.button-primary:hover:not(:disabled){background:var(--accent-dark)}.button-secondary{color:var(--ink);border-color:var(--line);background:#fff}.button-secondary:hover:not(:disabled),.button-filter:hover{background:#f4f2ec}.button-wide{width:100%;min-height:48px}.button-danger{color:#984f45;background:#fff6f2;border-color:#eed7d0}.button-danger:hover:not(:disabled){background:#fcebe5}.button-text{min-height:34px;color:var(--muted);background:0 0;padding:0 7px}.button-text:hover{color:var(--ink)}.privacy-note,.quiet-note{color:#606660;font-size:12px;line-height:1.8}.privacy-note{margin:22px 0 0}.privacy-note+.privacy-note{margin-top:10px}.inline-alert{color:#885739;background:#fff8ef;border:1px solid #edcfb9;border-radius:12px;margin:14px 0;padding:12px 14px;font-size:12px;line-height:1.6}.danger-callout{background:#fff8ef;border:1px solid #edcfb9;border-radius:12px;margin-top:14px;padding:12px}.danger-callout p{color:#885739;margin:0 0 10px;font-size:12px;line-height:1.6}.recovery-card{text-align:left}.recovery-card .button{margin:10px 0}.recovery-card .privacy-note{margin-bottom:14px}.loading-shell{color:var(--muted)}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--line);background:#fffefadb;justify-content:space-between;align-items:center;height:68px;padding:0 max(24px,50vw - 540px);display:flex}.brand{color:var(--ink);letter-spacing:.04em;align-items:center;gap:10px;font-weight:750;text-decoration:none;display:inline-flex}.topbar-right{align-items:center;gap:16px;display:flex}.mode-pill{color:#696d66;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;max-width:230px;font-size:11px;display:inline-flex;overflow:hidden}.mode-dot{background:#6f9b7b;border-radius:50%;width:7px;height:7px}.icon-button{color:var(--muted);background:0 0;border:0}.icon-button:hover{color:var(--ink)}.topbar .icon-button{border-radius:12px;width:38px;height:38px;font-size:20px}.topbar .icon-button:hover{background:#f1efe9}.main-content{width:min(100% - 40px,990px);margin:0 auto;padding:39px 0 64px}.welcome-row{justify-content:space-between;align-items:center;margin-bottom:26px;display:flex}.welcome-row h1{letter-spacing:.02em;margin:0;font-size:29px}.muted{color:var(--muted);font-size:12px;line-height:1.8}.welcome-row .muted{margin:9px 0 0}.character-placeholder{color:#a19f96;background:#f2f0ea;border:1px dashed #d7d4cb;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:92px;height:88px;display:flex}.character-face{font-family:serif;font-size:28px;line-height:1}.character-placeholder small{letter-spacing:.08em;font-size:9px}.summary-grid{grid-template-columns:1.25fr 1fr 1fr;gap:13px;display:grid}.summary-card{border:1px solid var(--line);background:var(--paper);border-radius:18px;min-height:132px;padding:20px 22px}.summary-card p{color:var(--muted);margin:0 0 14px;font-size:11px;font-weight:600}.summary-card strong{letter-spacing:-.035em;font-size:25px;font-weight:720;display:block}.summary-card strong small{font-size:14px;font-weight:600}.summary-card span{color:#94958f;margin-top:7px;font-size:10px;display:block}.summary-card .rounding-note{color:#62675f;margin-top:5px;font-size:9px;line-height:1.5;display:block}.summary-main{background:#f0f5ee;border-color:#d9e5da}.summary-main strong{color:#355f4d;font-size:29px}.notice-panel{background:#fffaf1;border:1px solid #ebddc9;border-radius:18px;margin-top:17px;padding:21px 23px 15px}.section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-heading .eyebrow{margin-bottom:6px}.section-heading h2{letter-spacing:.01em;margin:0;font-size:19px}.notice-count{color:#90653d;background:#f3e6d2;border-radius:50%;place-items:center;width:29px;height:29px;font-size:12px;font-weight:700;display:grid}.notice-panel ul{margin:15px 0 0;padding:0;list-style:none}.notice-panel li{border-top:1px solid #e0d2bca6;align-items:center;gap:12px;min-height:55px;display:flex}.notice-icon{color:#986f48;background:#f2e3cf;border-radius:50%;place-items:center;width:25px;height:25px;font-size:12px;font-weight:800;display:grid}.notice-panel li span:nth-child(2){flex:1;gap:4px;display:grid}.notice-panel li strong{font-size:12px}.notice-panel li small{color:#88847c;font-size:10px}.notice-panel li b{font-size:12px}.notice-panel .quiet-note{margin:10px 0 0}.add-button{min-height:40px}.add-button span{font-size:17px}.list-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:19px 0 12px;display:flex}.search-box{border:1px solid var(--line);background:var(--paper);color:#888b84;border-radius:12px;flex:1;align-items:center;gap:9px;min-width:0;height:42px;padding:0 13px;display:flex}.search-box span{font-size:22px;line-height:1}.search-box input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:12px}.search-box input::placeholder{color:#a5a69f}.button-filter{border-color:var(--line);background:var(--paper);color:#6d7069;min-height:42px;font-size:11px}.toolbar-select{flex:0 auto}.toolbar-select select{border:1px solid var(--line);background:var(--paper);color:#6d7069;border-radius:12px;max-width:100%;min-height:42px;padding:0 30px 0 12px;font-size:11px}.subscription-list{border:1px solid var(--line);background:var(--paper);border-radius:18px;overflow:hidden}.subscription-row{border-bottom:1px solid #efede7;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:14px;min-height:82px;padding:14px 17px;display:grid}.subscription-row:last-child{border-bottom:0}.service-monogram{color:#646e64;background:#f1f0eb;border:1px solid #e6e4dc;border-radius:14px;place-items:center;width:42px;height:42px;font-size:17px;font-weight:700;display:grid}.service-logo{width:42px;height:42px;color:var(--brand-color);background:#fff;border:1px solid #e6e4dc;border-radius:14px;place-items:center;display:grid}.service-logo svg{fill:currentColor;width:23px;height:23px}.service-logo img{object-fit:contain;width:30px;height:30px}.service-logo-crop-left{overflow:hidden}.service-logo-crop-left img{object-fit:cover;object-position:left center;transform:scale(1.3)}.service-candidate-preview{background:#fbfaf7;border:1px solid #ebe9e2;border-radius:12px;align-items:center;gap:11px;margin:-4px 0 15px;padding:10px;display:flex}.service-candidate-preview strong,.service-candidate-preview small{display:block}.service-candidate-preview strong{font-size:12px}.service-candidate-preview small{color:#898b84;margin-top:3px;font-size:10px}.service-suggestions{gap:3px;margin:0;padding:6px;display:grid}.service-suggestion{width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e6e4dc;border-radius:10px;align-items:center;gap:10px;padding:8px;display:flex}.service-suggestion:hover,.service-suggestion[aria-selected=true]{background:#faf4e9;border-color:#b99b69}.service-suggestion .service-logo,.service-suggestion .service-monogram{border-radius:9px;flex:none;width:36px;height:36px}.service-suggestion .service-logo img{object-fit:contain;width:24px;height:24px}.service-suggestion .service-logo svg{width:22px;height:22px}.service-suggestion .service-logo-crop-left img{object-fit:cover;object-position:left center;transform:scale(1.2)}.service-suggestion strong,.service-suggestion small{display:block}.service-suggestion strong{font-size:12px}.service-suggestion small{color:#777;margin-top:3px;font-size:10px}.suggestion-action{color:#555;margin-left:auto;font-size:11px}.catalog-origin{overflow-wrap:anywhere;color:#7b7e77;font-size:11px}.catalog-origin a{color:inherit}.service-info{min-width:0}.service-title{align-items:center;gap:8px;min-width:0;display:flex}.service-title h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:700;overflow:hidden}.category-tag{color:#80837b;background:#f2f1ec;border-radius:7px;flex:none;padding:4px 7px;font-size:9px}.service-info p{color:#8a8b84;margin:6px 0 0;font-size:10px}.row-notes{color:#9b9b93;text-overflow:ellipsis;white-space:nowrap;max-width:540px;margin-top:5px;font-size:10px;display:block;overflow:hidden}.subscription-price{white-space:nowrap}.subscription-price strong{font-size:14px;font-weight:700}.subscription-price small{color:#92938d;margin-left:2px;font-size:10px}.row-actions{gap:5px;display:flex}.row-actions .icon-button{border-radius:8px;padding:7px;font-size:10px}.row-actions .icon-button:hover{background:#f2f1ec}.row-delete:hover{color:#a64e43}.empty-state{text-align:center;background:#fffefa8c;border:1px dashed #dedbd3;border-radius:18px;flex-direction:column;align-items:center;padding:52px 20px;display:flex}.empty-icon{color:#78907d;border:1px solid #d9ded6;border-radius:50%;place-items:center;width:44px;height:44px;font-size:23px;display:grid}.empty-state h3{margin:16px 0 4px;font-size:15px}.empty-state p{max-width:300px;color:var(--muted);margin:0 0 16px;font-size:11px;line-height:1.8}.page-footer{border-top:1px solid var(--line);color:#a0a097;justify-content:space-between;align-items:center;gap:15px;width:min(100% - 40px,990px);margin:0 auto;padding:18px 0 24px;font-size:10px;display:flex}.toast{z-index:30;color:#42614b;background:#f5fbf5;border:1px solid #dce6dd;border-radius:12px;align-items:center;gap:16px;max-width:calc(100vw - 32px);padding:10px 12px 10px 16px;font-size:12px;display:flex;position:fixed;top:80px;left:50%;transform:translate(-50%);box-shadow:0 7px 24px #1e32221a}.toast button{color:#708776;background:0 0;border:0;font-size:18px}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1e211e47;justify-content:flex-end;display:flex;position:fixed;inset:0}.form-panel{background:var(--paper);width:min(100%,520px);height:100%;padding:29px 32px 34px;overflow-y:auto;box-shadow:-18px 0 54px #1e211e24}.settings-panel{width:min(100%,470px)}.confirm-panel{border-radius:18px;align-self:center;width:min(100%,470px);height:auto;max-height:calc(100% - 40px);margin:auto}.form-heading{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.form-heading h2{margin:0;font-size:23px}.close-button{border-radius:10px;width:34px;height:34px;font-size:23px}.close-button:hover{background:#f1efe9}.field{color:#555951;gap:7px;margin-bottom:16px;font-size:11px;font-weight:650;display:grid}.field>span b{color:#ba704f}.field input,.field select,.field textarea{width:100%;min-height:43px;color:var(--ink);background:#fff;border:1px solid #e2dfd8;border-radius:10px;padding:10px 12px;font-size:12px;font-weight:450}.field textarea{resize:vertical;min-height:76px;line-height:1.65}.field small{color:#92938c;font-size:10px;font-weight:450;line-height:1.6}.service-name-field{margin-bottom:16px;position:relative}.service-name-field .field{margin-bottom:7px}.service-name-input{width:100%;min-height:43px;color:var(--ink);background:#fff;border:1px solid #e2dfd8;border-radius:10px;padding:10px 12px;font-size:12px}.field-help{color:#92938c;margin-top:6px;font-size:10px;line-height:1.6;display:block}.service-name-field>.service-suggestions{z-index:6;background:#fff;border:1px solid #cfb78e;border-radius:12px;max-height:322px;position:absolute;top:72px;left:0;right:0;overflow-y:auto;box-shadow:0 14px 36px #12283429}.service-suggestions-advanced{background:#fff;border:1px solid #e6e4dc;border-radius:11px;max-height:290px;margin:-7px 0 12px;overflow-y:auto}.billing-guidance{color:#394b4d;background:#fbf7ed;border:1px solid #ded2bc;border-radius:12px;margin:-1px 0 18px;padding:13px 14px;font-size:11px}.billing-guidance>strong{font-size:12px}.billing-guidance .field{margin:8px 0}.billing-guidance-result{gap:9px;padding-top:5px;line-height:1.6;display:grid}.billing-guidance-result .button{justify-self:start}.billing-guidance-result small{color:#626e6d}.billing-guidance-result a{color:#176078}.billing-guidance-unknown{color:#737b78;margin:-4px 0 17px;font-size:10px;line-height:1.6}.contract-start-field{color:#555951;margin:2px 0 17px}.contract-start-field>strong{font-size:11px;display:block}.contract-start-field>small{color:#92938c;margin:6px 0 10px;font-size:10px;line-height:1.6;display:block}.month-calendar{background:#fbfaf6;border:1px solid #ded8cb;border-radius:12px;max-width:310px;padding:10px}.month-calendar-heading{text-align:center;grid-template-columns:32px 1fr 32px;align-items:center;gap:5px;margin-bottom:8px;display:grid}.month-calendar-heading strong{color:#233c47;font-size:13px}.month-calendar-heading button{color:#233c47;cursor:pointer;background:#fff;border:1px solid #e6dfd2;border-radius:7px;width:32px;height:30px;font-size:18px}.month-calendar-heading button:disabled{opacity:.35;cursor:default}.month-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.month-calendar-weekday{color:#737d7d;text-align:center;padding:4px 0;font-size:10px}.month-calendar-grid button{color:#283e47;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;height:30px;font-size:11px}.month-calendar-grid button:hover,.month-calendar-grid button:focus-visible{background:#f3e7d2;border-color:#c0a069}.month-calendar-grid button.is-today{border-color:#c0a069}.month-calendar-grid button[aria-pressed=true]{color:#fff;background:#123e50;border-color:#123e50}.month-calendar-clear{color:#66777b;cursor:pointer;background:0 0;border:0;margin-top:8px;padding:4px 6px;font-size:10px;text-decoration:underline}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.advanced-fields{border:1px solid var(--line);background:#faf9f5;border-radius:12px;margin:3px 0 18px;padding:13px 14px}.advanced-fields summary{color:#64675f;cursor:pointer;font-size:11px;font-weight:650}.advanced-fields .quiet-note{margin:10px 0}.check-row{color:#60635d;align-items:center;gap:9px;margin:11px 0;font-size:11px;display:flex}.check-row input{width:16px;height:16px;accent-color:var(--accent)}.form-actions{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.form-actions .button{min-width:106px}.billing-panel .quiet-note{margin:12px 0 18px;line-height:1.6}.billing-date-note{color:var(--muted);margin:3px 0 12px;font-size:12px}.billing-history{border-top:1px solid var(--line);margin-top:25px}.billing-history h3{margin:17px 0 10px;font-size:15px}.billing-history ul{margin:0;padding:0;list-style:none}.billing-history li{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:9px 0;font-size:12px;display:grid}.billing-history li button{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;text-decoration:underline}.settings-group{border-top:1px solid var(--line);padding:19px 0}.settings-group h3{margin:0 0 13px;font-size:13px}.settings-group .field{margin-top:16px}.import-panel{width:min(100%,650px)}.import-counts{flex-wrap:wrap;gap:9px;margin:16px 0;display:flex}.import-counts span{border:1px solid var(--line);color:var(--muted);background:#faf9f5;border-radius:9px;padding:7px 10px;font-size:10px}.import-counts b{color:var(--ink);margin-left:4px}.import-list{border:1px solid var(--line);background:#fff;border-radius:13px;max-height:min(52vh,510px);overflow:auto}.import-row{border-bottom:1px solid #efede7;padding:9px 13px}.import-row:last-child{border-bottom:0}.import-row-main{justify-content:space-between;align-items:center;gap:10px;display:flex}.import-row-main .check-row{flex:1;min-width:0;margin:0}.import-row-main .check-row span{gap:4px;min-width:0;display:grid}.import-row-main .check-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.import-row-main .check-row small{color:var(--muted);font-size:9px}.import-status{color:#797b74;background:#f1f0eb;border-radius:7px;flex:none;padding:5px 7px;font-size:9px}.import-status-eligible,.import-status-created,.import-status-already_imported{color:#50745e;background:#eaf1eb}.import-status-possible_duplicate{color:#9b7040;background:#fff4df}.import-status-conflict,.import-status-deleted,.import-status-limit_exceeded{color:#98574b;background:#f9e9e5}.duplicate-confirm{margin:8px 0 0 24px;font-size:10px}.import-delete-option{background:#faf8f1;border:1px solid #e8e2d6;border-radius:11px;margin:15px 0 0;padding:12px;line-height:1.6}.import-panel .form-actions{flex-wrap:wrap}.import-panel .form-actions .button-danger{min-width:150px}.settings-group .form-actions{justify-content:flex-start;margin-top:12px}@media (width<=700px){.topbar{height:60px;padding:0 18px}.main-content{width:min(100% - 32px,540px);padding:27px 0 45px}.welcome-row{align-items:flex-start}.welcome-row h1{font-size:25px}.character-placeholder{border-radius:18px;width:72px;height:72px}.summary-grid{grid-template-columns:1fr 1fr;gap:9px}.summary-main{grid-column:1/-1}.summary-card{border-radius:15px;min-height:111px;padding:16px}.summary-main{min-height:121px}.summary-card p{margin-bottom:11px}.summary-card strong{font-size:20px}.summary-main strong{font-size:27px}.subscription-row{grid-template-columns:40px minmax(0,1fr) auto;gap:10px;padding:13px 12px}.service-monogram,.service-logo{border-radius:12px;width:38px;height:38px}.service-title{flex-wrap:wrap;gap:5px}.service-title h3{max-width:100%}.subscription-price{grid-area:2/2;align-self:start}.subscription-price strong{font-size:12px}.row-actions{flex-direction:column;grid-area:1/3/3;align-items:stretch}.row-actions .icon-button{padding:6px 4px}.page-footer{align-items:flex-start;width:min(100% - 32px,540px);font-size:9px}.page-footer .button-text{white-space:nowrap}.form-panel{padding:24px 20px 28px}.import-panel .form-actions .button{flex:135px}}@media (width<=380px){.entry-card{padding:34px 23px 28px}.main-content{width:calc(100% - 24px)}.summary-card{padding:13px 12px}.summary-card p{font-size:10px}.summary-card strong{font-size:18px}.summary-main strong{font-size:24px}.list-toolbar{gap:6px}.button-filter{padding:0 10px}.category-tag{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{color:#102b3b;--ink:#102b3b;--muted:#667786;--line:#e9e2d6;--paper:#fffefa;--accent:#103b4c;--accent-dark:#0b2e3d;--accent-soft:#e8f1f2;--warm:#b68a4e;--shadow:0 12px 35px #1e292b12;background:#f8f6f0}body{color:#102b3b;background:#f8f6f0}.dashboard-shell{grid-template-columns:200px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#f7eedb;background:linear-gradient(160deg,#0c3444,#123f50 60%,#0b3040);flex-direction:column;height:100vh;padding:22px 12px 20px;display:flex;position:sticky;top:0;overflow:hidden}.sidebar:before{content:"";pointer-events:none;border:1px solid #d0a96761;position:absolute;inset:0}.sidebar-brand{color:#fff9e9;white-space:nowrap;border-bottom:1px solid #e5d1a440;align-items:center;gap:10px;min-height:67px;padding:0 8px 16px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:14px;font-weight:700;text-decoration:none;display:flex;position:relative}.fleur-mark{color:#cda66b;font-size:29px;line-height:1}.side-nav{gap:8px;margin:62px -12px 0;display:grid}.side-nav-item{color:#f4f5f1;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:0 13px 13px 0;align-items:center;gap:13px;min-height:54px;padding:0 19px;font-size:13px;font-weight:650;display:flex}.side-nav-item span{color:#e9eadf;text-align:center;flex:0 0 22px;width:22px;font-size:21px}.side-nav-item:hover{background:#ffffff1a}.side-nav-item.active{color:#132e3a;background:linear-gradient(90deg,#e8d0a4,#fbefd3);box-shadow:0 4px 15px #0000001f}.side-nav-item.active span{color:#143748}.sidebar-caption{color:#efe2c6;margin-top:auto;padding:18px 9px 5px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:13px;line-height:1.8;position:relative}.sidebar-caption p{margin:14px 0 0}.fleur-divider{color:#d0a86a;text-align:center;font-size:11px;display:block}.dashboard-main-column{min-width:0}.dashboard-topbar{z-index:5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf2;border-bottom:1px solid #e8e1d6;grid-template-columns:minmax(215px,.72fr) minmax(230px,1fr) auto;align-items:center;gap:25px;min-height:90px;padding:10px 29px;display:grid;position:sticky;top:0}.topbar-brand{align-items:center;gap:14px;min-width:0;display:flex}.topbar-brand .fleur-mark{font-size:36px}.topbar-brand strong,.topbar-brand small{display:block}.topbar-brand strong{letter-spacing:.05em;font-family:Yu Mincho,Hiragino Mincho ProN,Noto Serif JP,serif;font-size:19px}.topbar-brand small{color:#697886;letter-spacing:.08em;margin-top:3px;font-size:10px}.top-search{color:#304a5c;background:#fff;border:1px solid #dad7d0;border-radius:30px;align-items:center;gap:13px;height:54px;padding:0 18px;display:flex;box-shadow:inset 0 1px 2px #00000006}.top-search span{font-size:25px;line-height:1}.top-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:13px}.top-search input::placeholder{color:#8b97a1}.topbar-actions{align-items:center;gap:15px;display:flex}.storage-label{color:#64727c;text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:10px;overflow:hidden}.storage-switch{cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px 9px}.storage-switch:hover{background:#f0ede7}.top-icon-button{color:#344e60;background:0 0;border:0;border-radius:50%;place-items:center;width:38px;height:38px;font-size:22px;display:grid;position:relative}.top-icon-button:hover{background:#f0ede7}.top-icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.notification-button i{background:#d55849;border:1px solid #fff;border-radius:50%;width:9px;height:9px;position:absolute;top:4px;right:4px}.profile-button{color:#fff;background:#74828c}.profile-button svg{fill:currentColor;stroke:none;width:22px;height:22px}.dashboard-content{padding:22px 26px 34px}.dashboard-layout{grid-template-columns:minmax(0,1fr) minmax(300px,35%);align-items:stretch;gap:23px;max-width:1660px;margin:0 auto;display:grid}.dashboard-layout.mascot-disabled{grid-template-columns:minmax(0,1fr)}.dashboard-center{min-width:0}.welcome-row{margin:6px 0 18px}.welcome-row h1{color:#102d3c;letter-spacing:.035em;font-family:Yu Mincho,Hiragino Mincho ProN,Noto Serif JP,serif;font-size:clamp(30px,3vw,45px)}.welcome-row .eyebrow{color:#86909a;letter-spacing:.14em;margin:0 0 5px;font-size:10px}.welcome-subtitle{color:#536a7d;margin:6px 0 0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:14px}.summary-grid{grid-template-columns:1fr 1fr;gap:15px}.summary-card{background:#fffefa;border:1px solid #ebe4d8;border-radius:16px;align-items:flex-start;gap:17px;min-height:170px;padding:24px 20px;display:flex;position:relative;overflow:hidden;box-shadow:0 7px 21px #2229270a}.summary-main{color:#f9f3e8;background:radial-gradient(circle at 82% 25%,#2f5e6a99,#0000 45%),linear-gradient(130deg,#0d3747,#154759);border:2px solid #bd9b60}.summary-icon{color:#efcf91;border:1px solid #d5ac67;border-radius:50%;flex:0 0 58px;place-items:center;width:58px;height:58px;font-size:27px;display:grid}.summary-icon.pale{color:#173d50;background:#faf7f0;border-color:#eadfce}.summary-card p{color:inherit;margin:3px 0 10px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:13px}.summary-card strong{letter-spacing:-.04em;white-space:nowrap;font-size:clamp(23px,2.3vw,34px)}.summary-card span{color:inherit}.summary-main>div:last-of-type span{color:#d3dee0;font-size:11px;line-height:1.5;display:block}.summary-main>div strong{color:#fff9ed}.summary-watermark{font-size:100px;line-height:.9;position:absolute;bottom:12px;right:14px;color:#d3b37821!important}.next-payment-card{align-items:flex-start}.next-payment-card>div:nth-child(2){min-width:0}.next-payment-card span:not(.summary-chevron){color:#52677b;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.next-payment-card small{color:#6e7b85;border-top:1px solid #e6e2db;margin-top:13px;padding-top:10px;font-size:10px;line-height:1.5;display:block}.next-payment-card small b{color:#d84d43;margin-left:8px;font-size:13px}.summary-chevron{margin:43px 0 0 auto;color:#183f51!important;font-size:28px!important}.rounding-note{color:#69747c;margin:8px 0 0;font-size:10px}.billing-caveat{color:#68757c;margin:7px 0 0;font-size:10px;line-height:1.5}.subscription-section{margin-top:29px}.section-heading h2{font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:20px}.section-heading .eyebrow{color:#899198;letter-spacing:.14em;font-size:9px}.section-heading>div h2:after{content:"";background:#ba9458;width:43px;height:2px;margin-top:10px;display:block}.add-button{color:#fff8e9;background:#103c4d;border:2px double #d2ad71;border-radius:12px;min-height:43px;padding:0 19px;font-size:12px}.add-button:hover:not(:disabled){background:#0b2e3d}.list-toolbar{justify-content:flex-end;margin:10px 0}.toolbar-select select,.button-filter{border-radius:9px;min-height:36px;font-size:10px}.subscription-list{border-color:#e9e2d7;border-radius:13px;box-shadow:0 7px 20px #252c2a09}.subscription-table-head{color:#435b6d;background:#f5f2ec;grid-template-columns:minmax(160px,1.7fr) minmax(95px,1fr) minmax(85px,.8fr) minmax(58px,.65fr) auto;align-items:center;gap:9px;min-height:40px;padding:0 15px;font-size:10px;font-weight:650;display:grid}.subscription-row{grid-template-columns:40px minmax(120px,1.7fr) minmax(95px,1fr) minmax(85px,.8fr) minmax(58px,.65fr) auto;gap:9px;min-height:70px;padding:9px 15px}.service-monogram,.service-logo{border-radius:11px;width:40px;height:40px}.service-info p{font-size:9px}.service-title h3{font-size:11px}.category-tag{padding:3px 5px;font-size:8px}.table-date{color:#455c70;white-space:nowrap;font-size:10px}.subscription-price strong{font-size:15px}.status-label{color:#087d65;white-space:nowrap;font-size:10px}.status-label:before{content:"";background:#08a47f;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.status-archived{color:#66727a}.status-archived:before{background:#9aa0a1}.row-actions{flex-wrap:wrap;justify-content:flex-end}.row-actions .icon-button{padding:5px;font-size:9px}.mascot-card{background:radial-gradient(circle at 50% 38%,#e1ba7957 0 29%,#0000 29.2%),radial-gradient(#bbab8d .7px,#0000 1px) 0 0/15px 15px,linear-gradient(150deg,#fffaf0,#f1e8d6);border:1px solid #d5bc8f;border-radius:15px;min-width:0;height:calc(100vh - 134px);min-height:570px;max-height:850px;position:sticky;top:112px;overflow:hidden;box-shadow:inset 0 0 0 5px #ffffff7a}.mascot-card:before{content:"";pointer-events:none;border:1px solid #be9c624f;border-radius:10px;position:absolute;inset:10px}.mascot-card:after{color:#9c703a38;content:"⚜";pointer-events:none;font-size:75px;position:absolute;bottom:15px;right:15px}.mascot-speech-bubble{z-index:4;filter:drop-shadow(1px 0 #111)drop-shadow(-1px 0 #111)drop-shadow(0 1px #111)drop-shadow(0 -1px #111);width:200px;height:94px;position:absolute;top:20px;right:12px}.mascot-speech-text{box-sizing:border-box;clip-path:polygon(0 0,100% 0,100% 100%,calc(40% + 8px) 100%,40% calc(100% + 16px),calc(40% - 8px) 100%,0 100%);color:#132f43;text-align:center;background:#fffefa;border-radius:16px;width:100%;min-width:48px;height:100%;min-height:48px;margin:0;padding:23px 8px 0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:15px;font-weight:700;line-height:1.4;box-shadow:0 32px 0 -16px #fffefa}.mascot-art{position:absolute;inset:32px 0 86px;overflow:hidden}.mascot-cell{aspect-ratio:2/3;width:auto;height:94%;position:absolute;top:3%;left:calc(50% - 60px);overflow:hidden;transform:translate(-50%)}.mascot-cell-idle{transform-origin:50% 94%;animation:4.8s ease-in-out infinite mascot-breathe}.mascot-cell-tsun{transform-origin:50% 92%;animation:1.5s ease-in-out both mascot-tsun-snap}.mascot-cell-shy{transform-origin:50% 92%;animation:1.5s ease-in-out both mascot-shy-glance}.mascot-cell-welcome,.mascot-cell-notice{transform-origin:50% 92%;animation:3.25s ease-in-out both mascot-point}.mascot-cell-success{transform-origin:50% 92%;animation:2.75s ease-in-out both mascot-relief}@keyframes mascot-breathe{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)scale(1.008,1.013)rotate(.3deg)}}@keyframes mascot-tsun-snap{0%,to{transform:translate(-50%)}14%{transform:translate(-50%)scale(.985,.99)rotate(-1deg)}30%{transform:translate(-50%)scale(1.015)rotate(1.5deg)}46%,72%{transform:translate(-50%)rotate(1deg)}85%{transform:translate(-50%)rotate(-.4deg)}}@keyframes mascot-shy-glance{0%,to{transform:translate(-50%)}14%{transform:translate(-50%)scale(.985)rotate(.8deg)}29%{transform:translate(-50%)scale(1.01)rotate(-1.3deg)}44%,72%{transform:translate(-50%)rotate(-.9deg)}86%{transform:translate(-50%)rotate(.3deg)}}@keyframes mascot-point{0%,to{transform:translate(-50%)}28%{transform:translate(-50%)rotate(-.6deg)}48%,68%{transform:translate(-50%)rotate(-1deg)}85%{transform:translate(-50%)rotate(.3deg)}}@keyframes mascot-relief{0%,to{transform:translate(-50%)}38%,72%{transform:translate(-50%)scale(1.008)rotate(.5deg)}}.mascot-sprite{object-fit:fill;object-position:left center;pointer-events:none;width:300%;max-width:none;height:100%;transition:none;position:absolute;top:0;left:0}.mascot-hotspot{z-index:2;cursor:pointer;background:0 0;border:0;border-radius:42%;position:absolute}.mascot-hotspot:focus-visible{outline-offset:2px;outline:3px solid #9b6b30}.mascot-hotspot-hair{width:65%;height:31%;top:3%;left:18%}.mascot-hotspot-arms{width:42%;height:20%;top:32%;left:33%}.mascot-hotspot-bag{width:26%;height:28%;top:50%;left:69%}.mascot-fallback{color:#c49d62;place-items:center;font-size:96px;display:grid;position:absolute;inset:100px 20px 60px}.mascot-caption{z-index:3;text-align:center;background:#fffdf7f5;border:1px solid #d3bc95;border-radius:10px;gap:3px;padding:8px 10px;display:grid;position:absolute;bottom:12px;left:12px;right:12px;box-shadow:0 4px 14px #44301917}.mascot-motto{color:#183744;margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:15px;font-weight:700;line-height:1.4}.detail-page{min-height:560px;padding:8px 0 28px}.detail-page .eyebrow{color:#899198;letter-spacing:.14em;margin:0 0 5px;font-size:10px}.detail-page h1{color:#102d3c;margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(28px,3vw,42px)}.detail-page h2{color:#183846;margin:28px 0 12px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:20px}.detail-intro,.detail-note{color:#536a76;margin:8px 0 0;font-size:13px;line-height:1.7}.report-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:22px;display:grid}.report-summary>div,.calendar-summary{background:#fffefa;border:1px solid #e5d9c6;border-radius:13px;padding:18px}.report-summary span,.calendar-summary span{color:#526877;font-size:12px;display:block}.report-summary strong,.calendar-summary strong{color:#123b4e;margin-top:8px;font-size:clamp(18px,2vw,26px);display:block}.report-categories{background:#fffefa;border:1px solid #e5d9c6;border-radius:13px;gap:15px;padding:20px;display:grid}.report-category>div:first-child{color:#193744;justify-content:space-between;gap:12px;font-size:13px;display:flex}.report-category>div:first-child span{color:#526877;white-space:nowrap}.report-track{background:#eee8db;border-radius:99px;height:9px;margin-top:7px;overflow:hidden}.report-track span{border-radius:inherit;background:#b18b50;height:100%;display:block}.calendar-summary{margin-top:20px}.payment-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-top:12px;display:grid}.calendar-weekday{color:#526877;text-align:center;padding:6px 0;font-size:12px;font-weight:700}.calendar-day{color:#294350;background:#fffefa;border:1px solid #e6dece;border-radius:8px;align-content:start;gap:5px;min-height:75px;padding:6px;font-size:12px;display:grid}.calendar-day.today{border-color:#b18b50;box-shadow:inset 0 0 0 1px #b18b50}.calendar-day.has-payment{background:#f9f0dd}.calendar-day .calendar-amount{color:#123b4e;overflow-wrap:anywhere;font-size:10px}.calendar-dot{display:none}.calendar-empty{background:0 0;border-color:#0000}.calendar-payments{background:#fffefa;border:1px solid #e5d9c6;border-radius:13px;margin:0;padding:0;list-style:none}.calendar-payments li{border-bottom:1px solid #eee8df;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 16px;font-size:13px;display:grid}.calendar-payments li:last-child{border-bottom:0}.calendar-payments time{color:#526877}.calendar-payments strong{color:#123b4e}.dashboard-quote{background:#fffefa8f;border:1px solid #e9e0d2;border-radius:11px;align-items:center;gap:14px;min-height:66px;margin-top:20px;padding:11px 16px;display:flex}.dashboard-quote>span{color:#b18b50;font-size:25px}.dashboard-quote p{color:#273a49;margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:12px}.dashboard-quote em{color:#ac8752;white-space:nowrap;margin-left:auto;font-family:Georgia,serif;font-size:11px}.page-footer{color:#858a89;width:auto;max-width:none;margin:0 26px;padding:15px 0 18px}.page-footer .button-text{white-space:nowrap}.top-search input:focus-visible{outline:0}.side-nav-item:focus-visible,.top-icon-button:focus-visible{outline-offset:2px;outline:3px solid #d1a968}@media (width<=1200px){.dashboard-shell{grid-template-columns:174px minmax(0,1fr)}.dashboard-layout{grid-template-columns:minmax(0,1fr) minmax(250px,32%);gap:15px}.dashboard-content{padding:20px 17px 30px}.dashboard-topbar{grid-template-columns:minmax(190px,.65fr) minmax(190px,1fr) auto;gap:14px;padding:10px 18px}.summary-card{gap:11px;padding:20px 14px}.summary-icon{flex-basis:46px;width:46px;height:46px;font-size:22px}.subscription-table-head,.subscription-row{grid-template-columns:36px minmax(110px,1.5fr) minmax(78px,1fr) minmax(72px,.8fr) auto}.subscription-table-head>span:nth-child(4),.subscription-row .table-date{display:none}}@media (width<=900px){.dashboard-shell{grid-template-columns:68px minmax(0,1fr)}.sidebar{align-items:center;padding:14px 5px}.sidebar-brand{justify-content:center;width:100%;padding:0 0 15px;font-size:0}.sidebar-brand .fleur-mark{font-size:29px}.side-nav{width:calc(100% + 10px);margin:30px -5px 0}.side-nav-item{border-radius:0;justify-content:center;min-height:51px;padding:0;font-size:0}.side-nav-item span{flex:none;width:auto;font-size:20px}.sidebar-caption{display:none}.dashboard-layout{grid-template-columns:minmax(0,1fr) 240px}.mascot-card{min-height:520px}.dashboard-topbar{grid-template-columns:auto minmax(150px,1fr) auto}.topbar-brand small,.storage-label{display:none}.topbar-brand strong{font-size:16px}.topbar-brand .fleur-mark{font-size:30px}.subscription-table-head,.subscription-row{grid-template-columns:34px minmax(95px,1fr) minmax(76px,.78fr) auto}.subscription-table-head>span:nth-child(4),.subscription-row>.status-label{display:none}}@media (width<=700px){.dashboard-shell{padding-bottom:62px;display:block}.sidebar{z-index:12;background:#103747;border-top:1px solid #d7c8ad;width:100%;height:60px;padding:0;display:block;position:fixed;inset:auto 0 0}.sidebar:before,.sidebar-brand,.sidebar-caption{display:none}.side-nav{grid-template-columns:repeat(5,1fr);gap:0;height:100%;margin:0;display:grid}.side-nav-item{color:#f7f0df;flex-direction:column;gap:2px;min-height:0;padding:5px 0;font-size:8px}.side-nav-item span{font-size:18px}.side-nav-item.active{color:#f1d69f;background:#ffffff14;border-radius:0;box-shadow:inset 0 2px #d0a669}.side-nav-item.active span{color:#f1d69f}.dashboard-topbar{grid-template-columns:auto minmax(100px,1fr) auto;gap:9px;min-height:64px;padding:8px 12px;position:relative}.topbar-brand{gap:7px}.topbar-brand .fleur-mark{font-size:25px}.topbar-brand strong{white-space:nowrap;font-size:12px}.top-search{gap:5px;height:38px;padding:0 9px}.top-search span{font-size:18px}.top-search input{font-size:10px}.topbar-actions{gap:2px}.top-icon-button{width:31px;height:31px;font-size:18px}.profile-button{font-size:12px}.dashboard-content{padding:20px 14px}.dashboard-layout{flex-direction:column;gap:23px;display:flex}.welcome-row{margin:0 0 16px}.welcome-row h1{font-size:30px}.welcome-subtitle{font-size:12px}.summary-grid{grid-template-columns:1fr;gap:9px}.summary-card{min-height:116px;padding:16px}.summary-main{min-height:120px}.summary-card strong{font-size:25px}.summary-watermark{font-size:78px}.subscription-section{margin-top:25px}.section-heading{align-items:flex-end;gap:8px}.section-heading h2{font-size:15px}.add-button{white-space:nowrap;min-height:39px;padding:0 11px;font-size:10px}.list-toolbar{justify-content:flex-start;gap:6px}.toolbar-select{flex:120px}.toolbar-select select{width:100%;padding:0 20px 0 8px;font-size:9px}.button-filter{flex:110px;padding:0 8px;font-size:9px}.subscription-table-head{display:none}.subscription-row{grid-template-columns:38px minmax(0,1fr) auto;gap:9px;padding:12px 10px}.subscription-row>.table-date,.subscription-row>.status-label{display:none}.service-info p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subscription-price{grid-area:2/2;align-self:start}.row-actions{flex-direction:column;grid-area:1/3/3;align-items:stretch}.row-actions .icon-button{padding:4px;font-size:9px}.dashboard-quote{flex-wrap:wrap;gap:8px}.dashboard-quote p{flex:1;font-size:10px}.dashboard-quote em{text-align:right;width:100%;margin-left:35px}.mascot-card{width:100%;height:500px;min-height:0;position:relative;top:auto}.mascot-art{inset:56px 12px 88px}.mascot-cell{left:calc(50% - 82px)}.mascot-copy{top:13px;left:14px;right:14px}.mascot-speech-bubble{height:84px;top:8px}.mascot-speech-text{padding-top:19px;font-size:14px}.mascot-caption{bottom:10px;left:10px;right:10px}.mascot-motto{font-size:14px}.report-summary{grid-template-columns:1fr 1fr}.report-summary>div:first-child{grid-column:1/-1}.calendar-day{min-height:50px;padding:4px}.calendar-amount{display:none}.calendar-dot{color:#af8241;font-size:13px;line-height:1;display:inline}.calendar-payments li{grid-template-columns:78px minmax(0,1fr) auto;gap:6px;padding:10px;font-size:10px}.page-footer{align-items:flex-start;gap:4px;margin:0 14px;padding-bottom:13px;font-size:8px}.page-footer .button-text{white-space:normal;font-size:9px}.toast{top:70px}}@media (width<=380px){.dashboard-topbar{grid-template-columns:auto minmax(80px,1fr) auto;padding-inline:8px}.topbar-brand strong{font-size:10px}.topbar-brand .fleur-mark{font-size:21px}.top-search input::placeholder{color:#0000}.dashboard-content{padding-inline:11px}.section-heading h2{font-size:13px}.add-button{padding-inline:8px}.mascot-card{height:470px}}@media (width>=1201px){.topbar-brand strong{font-size:26px}.side-nav-item{font-size:16px}.summary-card{gap:18px;min-height:200px;padding:25px 21px}.summary-icon{flex-basis:64px;width:64px;height:64px}.summary-card p{font-size:15px}.summary-card strong{font-size:clamp(45px,3.5vw,56px)}.summary-main>div:last-of-type span,.next-payment-card span:not(.summary-chevron){font-size:13px}.next-payment-card small{font-size:12px}.next-payment-card small b{font-size:15px}.subscription-table-head{grid-template-columns:minmax(180px,1.7fr) minmax(112px,1fr) minmax(100px,.8fr) minmax(82px,.65fr) auto;gap:11px;min-height:48px;padding:0 18px;font-size:13px}.subscription-row{grid-template-columns:46px minmax(135px,1.7fr) minmax(112px,1fr) minmax(100px,.8fr) minmax(82px,.65fr) auto;gap:11px;min-height:84px;padding:11px 18px}.service-monogram,.service-logo{width:44px;height:44px}.service-title h3{font-size:16px}.table-date,.status-label{font-size:14px}.subscription-price strong{font-size:18px}.row-actions .icon-button{padding:6px;font-size:11px}}@media (width>=1201px) and (width<=1350px){.subscription-table-head{grid-template-columns:minmax(165px,1.55fr) minmax(96px,.95fr) minmax(88px,.78fr) minmax(72px,.62fr) max-content;gap:8px;padding-inline:14px}.subscription-row{grid-template-columns:42px minmax(120px,1.55fr) minmax(96px,.95fr) minmax(88px,.78fr) minmax(72px,.62fr) max-content;gap:8px;padding-inline:14px}.row-actions{flex-wrap:nowrap;gap:2px;width:max-content}.row-actions .icon-button{white-space:nowrap;padding:4px 3px;font-size:10px}}
