:root { --ink:#191828; --muted:#716e82; --line:#e6e2ed; --paper:#fffdf9; --lilac:#f0ecff; --yellow:#ffc94d; --red:#ce4b55; --blue:#3b69c8; --green:#317650; --shadow:0 8px 28px rgba(43,34,66,.09); font:16px/1.45 ui-rounded,"Hiragino Maru Gothic ProN","Noto Sans JP",system-ui,sans-serif; color:var(--ink); background:#f8f5f0; }
*{box-sizing:border-box} body{margin:0;min-width:320px} button,input,select,textarea{font:inherit} button{cursor:pointer} a{color:inherit}.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 max(18px,calc((100% - 1120px)/2));background:rgba(255,253,249,.91);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:850;letter-spacing:.025em;font-size:.9rem}.brand small{font-size:.67rem;color:var(--muted);display:block;font-weight:650;letter-spacing:0}.brand-mark{height:32px;width:32px;border-radius:11px;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:1.05rem;font-family:Georgia,serif}.icon-button{border:1px solid var(--line);width:37px;height:37px;border-radius:12px;background:var(--paper);font-size:1.3rem;color:var(--ink)}
main{max-width:1120px;margin:0 auto;padding:25px 18px 50px}main:focus{outline:none}.page-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin:2px 0 20px}.eyebrow{color:var(--blue);font-weight:800;font-size:.76rem;letter-spacing:.08em;margin:0 0 4px}.page-heading h1{font-size:1.65rem;margin:0;letter-spacing:-.04em}.page-heading p{font-size:.85rem;color:var(--muted);margin:5px 0 0}.actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.button{border:1px solid var(--ink);background:var(--ink);color:white;border-radius:12px;padding:9px 13px;font-weight:750;text-decoration:none;white-space:nowrap}.button.secondary{background:var(--paper);color:var(--ink);border-color:var(--line)}.button.danger{background:var(--red);border-color:var(--red)}.button:disabled{opacity:.38;cursor:not-allowed}
.count-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:0 0 19px}.count{border:1px solid var(--line);border-radius:14px;padding:10px 9px;background:var(--paper);box-shadow:0 1px 0 rgba(0,0,0,.02)}.count b{display:block;font-size:1.12rem;line-height:1.1}.count span{font-size:.65rem;color:var(--muted);font-weight:800;letter-spacing:.04em;white-space:nowrap}.count.public{border-color:#b8dcc5}.count.ready{border-color:#bfd0f0}.count.coming{border-color:#f0d57e}.count.archive{opacity:.76}
.tool-row{display:flex;gap:8px;margin-bottom:12px}.search{flex:1;min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:11px 12px;outline-color:var(--blue)}.filter{max-width:150px;border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:0 8px}.project-list{display:grid;gap:9px}.project-card{width:100%;text-align:left;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:0 2px 8px rgba(43,34,66,.025)}.project-card:hover{border-color:#bcb4cf}.project-title{font-size:1rem;font-weight:850;margin:0 0 4px}.project-meta,.flags{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.meta{font-size:.76rem;color:var(--muted)}.state{display:inline-flex;align-items:center;border:1px solid currentColor;border-radius:99px;padding:2px 7px;font-size:.67rem;font-weight:900;letter-spacing:.03em;line-height:1.3}.state.WORKING{color:#766487;background:#f6f1fb}.state.HOLD{color:#95652d;background:#fff7e9}.state.READY{color:#3464bd;background:#eef4ff}.state.COMING_SOON{color:#9b7616;background:#fff8d7}.state.PUBLIC{color:#237247;background:#eef9f1}.state.ARCHIVED{color:#75717b;background:#f3f2f4}.tag{background:var(--lilac);border-radius:99px;padding:2px 7px;font-size:.68rem;font-weight:750}.availability{font-size:.7rem;color:var(--muted);display:flex;gap:7px;justify-content:flex-end;white-space:nowrap}.availability .yes{color:var(--green);font-weight:750}.availability .update{color:#a95e00;font-weight:850}.empty{border:1px dashed #cbc4d4;border-radius:16px;padding:34px 16px;text-align:center;color:var(--muted);background:rgba(255,255,255,.45)}
.detail-top{display:flex;gap:8px;align-items:center;margin-bottom:12px}.back{border:0;background:transparent;color:var(--muted);padding:7px 0;text-decoration:none;font-weight:750}.panel{background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:16px;margin:0 0 14px}.panel h2{font-size:1rem;margin:0 0 13px}.status-panel{display:flex;align-items:center;justify-content:space-between;gap:12px}.status-panel p{margin:3px 0 0;color:var(--muted);font-size:.8rem}.detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}.outlink{flex:1;min-width:104px;text-align:center;border:1px solid var(--line);background:var(--paper);border-radius:12px;text-decoration:none;padding:9px;font-size:.82rem;font-weight:800}.outlink.disabled{opacity:.42;pointer-events:none}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:grid;gap:5px}.field.wide{grid-column:1/-1}.field label{font-weight:800;font-size:.78rem}.field input,.field textarea,.field select{border:1px solid var(--line);border-radius:10px;padding:9px 10px;background:#fff;outline-color:var(--blue);width:100%}.field textarea{min-height:92px;resize:vertical}.switches{display:flex;gap:16px;flex-wrap:wrap;margin:3px 0 0;font-size:.83rem;font-weight:700}.switches label{display:flex;align-items:center;gap:6px}.timestamps{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:0;padding:0;list-style:none}.timestamps li{background:#faf8fc;border-radius:10px;padding:8px;font-size:.73rem}.timestamps strong{display:block;font-size:.67rem;color:var(--muted);margin-bottom:2px}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.notice{font-size:.8rem;color:var(--muted);background:#faf6e8;border-radius:11px;padding:10px;margin:0 0 12px}.modal-wrap{position:fixed;inset:0;background:rgba(23,22,37,.43);display:grid;place-items:end center;z-index:30;padding:16px}.modal{width:min(540px,100%);max-height:88vh;overflow:auto;border-radius:20px;background:var(--paper);padding:19px;box-shadow:0 20px 60px rgba(0,0,0,.26)}.modal h2{margin:0 0 6px;font-size:1.25rem}.modal p{color:var(--muted);font-size:.86rem;margin:6px 0 14px}.confirm-box{background:#f7f4fb;border-radius:12px;padding:12px;margin:12px 0;font-size:.84rem}.confirm-box b{display:block}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.import-tabs{display:flex;gap:7px;margin:0 0 16px}.tab{padding:8px 10px;border:1px solid var(--line);background:#fff;border-radius:10px;font-weight:800;font-size:.78rem}.tab.active{background:var(--ink);color:#fff;border-color:var(--ink)}.preview{border:1px solid #d9d3e5;border-radius:12px;background:#faf8fc;padding:11px;font-size:.82rem;margin-top:13px}.activity-list{list-style:none;margin:0;padding:0}.activity-list li{padding:10px 0;border-bottom:1px solid var(--line);font-size:.8rem}.activity-list li:last-child{border:0}.activity-list b{display:block}.activity-list time{color:var(--muted);font-size:.73rem}.toast{visibility:hidden;position:fixed;left:50%;bottom:20px;transform:translateX(-50%) translateY(15px);background:var(--ink);color:white;border-radius:99px;padding:9px 14px;font-size:.82rem;opacity:0;transition:.2s;z-index:40;max-width:90%;text-align:center}.toast.show{visibility:visible;opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:720px){main{padding:17px 13px 34px}.page-heading{margin-top:0;flex-wrap:wrap}.page-heading>div:first-child{min-width:0}.page-heading h1{font-size:1.4rem}.page-heading p{display:none}.actions{gap:6px;justify-content:flex-start;width:100%}.button{padding:8px 10px;font-size:.8rem}.count-grid{grid-template-columns:repeat(3,1fr);gap:6px}.count{padding:8px 7px;border-radius:12px}.count b{font-size:1rem}.count span{font-size:.58rem}.project-card{padding:12px}.availability{display:grid;justify-content:end;text-align:right;gap:3px}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.status-panel{align-items:flex-start;flex-direction:column}.timestamps{grid-template-columns:1fr 1fr}.modal-wrap{padding:8px;align-items:end}.modal{border-radius:18px 18px 14px 14px;padding:16px}.topbar{padding:0 13px}}
.release-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 10px}.release-actions .button{text-align:center}.release-actions a[aria-disabled=true]{opacity:.4;pointer-events:none}.deploy-error{display:grid;gap:4px;border:1px solid #e5aeb3;background:#fff2f2;color:#8d2932;border-radius:14px;padding:12px;margin-bottom:12px;font-size:.82rem}.deploy-error small{color:#795b5e}.clone-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.danger-zone{border-color:#e6b7ba;background:#fffafa}.danger-zone p{font-size:.82rem;color:var(--muted)}
@media(max-width:720px){.release-actions{grid-template-columns:1fr 1fr}.release-actions .button:last-child{grid-column:1/-1}}
@media(hover:none),(pointer:coarse){.pc-clone{display:none}}
.repository-status{display:block;min-height:1.4em;margin-top:.35rem;font-size:.86rem}.repository-status.success{color:var(--green)}.repository-status.error{color:var(--red)}
.preview-waiting{display:grid;gap:4px;border:1px solid #cfc8df;background:#f8f6fc;color:var(--ink);border-radius:14px;padding:12px;margin-bottom:12px;font-size:.82rem}.preview-waiting span{color:var(--muted)}.repository-name{font-size:1.05rem;margin:0 0 12px}.repository-name code{background:#f5f2f8;border-radius:8px;padding:6px 9px}

.state.MAINTENANCE{color:#9a5d17;background:#fff5df}
