/* カルテッド karted.css */

/* ===== 本体 ===== */
*{box-sizing:border-box}
body{margin:0;background:#F5F8FC;color:#1A1A1A;font-family:"Segoe UI","Yu Gothic UI","Meiryo UI","Hiragino Sans","Noto Sans JP",sans-serif;font-size:14px;line-height:1.5}
#pc .top{background:#fff;border-bottom:2px solid #1E5BB8;display:flex;align-items:center;height:52px;padding:0 24px;gap:6px;font-size:15px}
#pc .top .brand{color:#123E82;font-weight:700;font-size:17px;margin-right:22px}
#pc .top a{padding:0 14px;height:52px;line-height:50px;color:#6B6B6B;border-bottom:3px solid transparent}
#pc .top a.on{color:#123E82;border-bottom-color:#1E5BB8;font-weight:600}
#pc .top .sp{flex:1}#pc .top .gear{color:#6B6B6B;font-size:14px}
#pc-home{--ink:#1A1A1A;--mute:#6B6B6B;--line:#D5DDE8;--line2:#E5E5E5;--hover:#F0F0F0;--accent:#0067C0;--accent-soft:#CCE4F7;--warn:#B4552D;--warn-soft:#FBEDE6;--brand:#1E5BB8;--brand-deep:#123E82;--brand-soft:#E6EEF9}
#pc-files{--win-bg:#F3F3F3;--win-line:#E5E5E5;--win-line2:#D6D6D6;--ink:#1A1A1A;--mute:#6B6B6B;--accent:#0067C0;--accent-soft:#CCE4F7;--hover:#F0F0F0;--warn:#B4552D;--warn-soft:#FBEDE6;--brand:#1E5BB8;--brand-deep:#123E82;--brand-soft:#E6EEF9}
.ov{--ink:#1A1A1A;--mute:#6B6B6B}
#pc-files{display:none}
#pc-home .top{background:#fff;border-bottom:2px solid var(--brand);display:flex;align-items:center;height:52px;padding:0 24px;gap:6px;font-size:15px}
#pc-home .top .brand{color:var(--brand-deep);font-weight:700;font-size:17px;margin-right:22px}
#pc-home .top a{padding:0 14px;height:52px;line-height:50px;color:var(--mute);border-bottom:3px solid transparent}
#pc-home .top a.on{color:var(--brand-deep);border-bottom-color:var(--brand);font-weight:600}
#pc-home .top .sp{flex:1}
#pc-home .top .gear{color:var(--mute);font-size:14px}
#pc-home .wrap{display:grid;grid-template-columns:240px 1fr 380px;min-height:calc(100vh - 52px)}
#pc-home .left{background:#fff;border-right:1px solid var(--line);padding:16px 0}
#pc-home .left h3{margin:0 0 8px;padding:0 16px;font-size:13px;color:var(--mute)}
#pc-home .left .p{padding:10px 16px;border-left:3px solid transparent}
#pc-home .left .p.on{background:var(--brand-soft);border-left-color:var(--brand)}
#pc-home .left .p b{display:block;font-size:14px}
#pc-home .left .p span{font-size:12px;color:var(--mute)}
#pc-home .left .p.dim b{color:var(--mute);font-weight:400}
#pc-home main{padding:22px 32px;display:flex;flex-direction:column;gap:14px;max-width:900px;width:100%}
@media(max-width:1500px){#pc-home .wrap{grid-template-columns:220px 1fr 320px}
#pc-home main{padding:18px 22px}}
#pc-home main h1{font-size:20px;margin:0;font-weight:600;grid-column:1/-1}
#pc-home .menu-in{display:flex;border-bottom:1px solid var(--line);grid-column:1/-1}
#pc-home .menu-in span{padding:6px 14px;border-bottom:2px solid transparent;color:var(--mute)}
#pc-home .menu-in span.on{color:var(--brand-deep);border-bottom-color:var(--brand);font-weight:600}
#pc-home .right{background:#fff;border-left:1px solid var(--line);padding:18px 16px;display:flex;flex-direction:column;gap:14px}
#pc-home .right .issues{margin-top:auto;border-top:1px solid var(--line);padding-top:12px;font-size:13px}
#pc-home .right .issues h3{font-size:13px}
#pc-home .right h3{margin:0 0 8px;font-size:14px;color:var(--brand-deep)}
#pc-home .right ol{padding-left:20px;margin:0}
#pc-home .right li{margin-bottom:8px}
#pc-home .right .q{display:inline-block;background:var(--warn-soft);color:var(--warn);font-weight:700;font-size:12px;padding:0 6px;border-radius:3px;margin-right:4px}
#pc-home .mark{display:inline-block;background:var(--warn);color:#fff;font-weight:700;font-size:12px;width:18px;height:18px;line-height:18px;text-align:center;border-radius:9px;margin-left:5px;vertical-align:middle}
#pc-home /* 掲示板 */
.bbs{background:#fff;border:1px solid var(--line);border-radius:6px;display:flex;flex-direction:column;min-height:480px}
#pc-home .bbs .hd{padding:8px 16px;border-bottom:1px solid var(--line);font-weight:600;color:var(--brand-deep);display:flex;align-items:center}
#pc-home .bbs .hd .n{margin-left:auto;font-weight:400;font-size:13px;color:var(--mute)}
#pc-home .bbs .msgs{flex:1;padding:8px 16px;overflow:auto}
#pc-home .msg{padding:10px 0;border-bottom:1px solid var(--line2)}
#pc-home .msg:last-child{border-bottom:none}
#pc-home .av{flex:none;width:30px;height:30px;border-radius:15px;background:var(--brand-soft);color:var(--brand-deep);font-size:13px;font-weight:700;text-align:center;line-height:30px}
#pc-home .msg .b{flex:1}
#pc-home .msg .h{font-size:13px;color:var(--mute);margin-bottom:2px}
#pc-home .msg .h b{color:var(--ink);margin-right:8px;font-size:14px}
#pc-home .msg .t{white-space:pre-line}
#pc-home .msg .att{margin-top:6px;display:flex;gap:8px;flex-wrap:wrap}
#pc-home .msg .att{color:var(--mute);font-size:13px}
#pc-home .msg .att span{display:inline-flex;align-items:center;gap:5px;font-size:13px;padding:3px 10px;border:1px solid var(--line);border-radius:4px;background:#F8FAFD;color:var(--accent)}
#pc-home .ico{display:inline-block;width:16px;height:14px}
#pc-home .bbs .in{border-bottom:1px solid var(--line);padding:10px 16px;display:flex;gap:10px;align-items:flex-end}
#pc-home .bbs .in textarea{flex:1;border:1px solid var(--line);border-radius:4px;padding:8px 10px;font-size:14px;font-family:inherit;resize:vertical;min-height:60px}
#pc-home .btn{display:inline-block;padding:7px 14px;background:var(--brand);color:#fff;border-radius:4px;font-size:13px;white-space:nowrap}
#pc-home .btn.ghost{background:#fff;color:var(--brand);border:1px solid var(--brand)}
#pc-home /* これから */
.todo{background:#fff;border:1px solid var(--line);border-radius:6px}
#pc-home .todo .hd{padding:8px 16px;border-bottom:1px solid var(--line);font-weight:600;color:var(--brand-deep);display:flex;align-items:center}
#pc-home .todo .hd .add{margin-left:auto;font-weight:400;font-size:13px;color:var(--accent)}
#pc-home .todo table{width:100%;border-collapse:collapse}
#pc-home .todo td{padding:6px 16px;border-bottom:1px solid var(--line2);font-size:14px;vertical-align:middle}
#pc-home .todo tr:last-child td{border-bottom:none}
#pc-home .todo td.ck{width:34px}
#pc-home .todo td.ck input{width:14px;height:14px;accent-color:var(--accent)}
#pc-home .todo td.dt{width:130px;color:var(--mute);font-size:13px;white-space:nowrap}
#pc-home .todo td.who{width:90px;color:var(--mute);font-size:13px;text-align:right;white-space:nowrap}
#pc-home .todo td.done{color:var(--mute);text-decoration:line-through}
#pc-home .todo .tabs{display:flex;border-bottom:1px solid var(--line);align-items:center}
#pc-home .todo .tabs span{padding:8px 16px;font-size:14px;color:var(--mute);border-bottom:2px solid transparent;cursor:pointer}
#pc-home .todo .tabs span.on{color:var(--brand-deep);border-bottom-color:var(--brand);font-weight:600}
#pc-home .todo .tabs .add{margin-left:auto;margin-right:10px;padding:4px 12px;font-size:13px;color:#fff;background:var(--brand);border-radius:4px;border:none;border-bottom:none}
#pc-home .todo .pane{display:none}
#pc-home .todo .pane.on{display:block}
#pc-home /* 右の小カード */
.side{display:flex;flex-direction:column;gap:14px}
#pc-home .card{background:#F8FAFD;border:1px solid var(--line);border-radius:6px;padding:12px 14px}
#pc-home .card h4{margin:0 0 6px;font-size:14px;color:var(--brand-deep);font-weight:600}
#pc-home .card h4 a{float:right;font-size:13px;color:var(--accent);font-weight:400;text-decoration:none}
#pc-home .kv{display:grid;grid-template-columns:52px 1fr;gap:2px 8px;font-size:13px}
#pc-home .kv .k{color:var(--mute)}
#pc-home .member{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:13px}
#pc-home .member .sav{width:22px;height:22px;border-radius:11px;background:var(--brand-soft);color:var(--brand-deep);font-size:12px;font-weight:700;text-align:center;line-height:22px}
#pc-home .member .r{margin-left:auto;color:var(--mute)}
#pc-home .files div{padding:4px 0;font-size:13px;display:flex;gap:6px;align-items:center;white-space:nowrap;overflow:hidden}
#pc-home .files .d{color:var(--mute);min-width:112px}
#pc-home .files .nm{overflow:hidden;text-overflow:ellipsis}
@media(max-width:1000px){#pc-home main{grid-template-columns:1fr}
#pc-home .side{order:2}}
@media(max-width:900px){#pc-home .wrap{grid-template-columns:1fr}
#pc-home .left,#pc-home .right{display:none}}
#pc-files .top{background:#fff;border-bottom:2px solid var(--brand);display:flex;align-items:center;height:52px;padding:0 24px;gap:6px;font-size:15px}
#pc-files .top .brand{color:var(--brand-deep);font-weight:700;font-size:17px;margin-right:22px}
#pc-files .top a{padding:0 14px;height:52px;line-height:50px;color:var(--mute);border-bottom:3px solid transparent}
#pc-files .top a.on{color:var(--brand-deep);border-bottom-color:var(--brand);font-weight:600}
#pc-files .top .sp{flex:1}
#pc-files .top .gear{color:var(--mute);font-size:14px}
#pc-files .wrap{display:grid;grid-template-columns:240px 1fr 400px;min-height:calc(100vh - 52px)}
#pc-files .left{background:#fff;border-right:1px solid #D5DDE8;padding:16px 0}
#pc-files .left h3{margin:0 0 8px;padding:0 16px;font-size:13px;color:var(--mute)}
#pc-files .left .p{padding:10px 16px;border-left:3px solid transparent}
#pc-files .left .p.on{background:var(--brand-soft);border-left-color:var(--brand)}
#pc-files .left .p b{display:block;font-size:14px}
#pc-files .left .p span{font-size:12px;color:var(--mute)}
#pc-files .left .p.dim b{color:var(--mute);font-weight:400}
#pc-files main{padding:22px 32px;display:flex;flex-direction:column;gap:10px}
@media(max-width:1500px){#pc-files main{padding:18px 22px}}
#pc-files h1{font-size:20px;margin:0;font-weight:600}
#pc-files .menu-in{display:flex;border-bottom:1px solid #D5DDE8}
#pc-files .menu-in span{padding:6px 14px;border-bottom:2px solid transparent;color:var(--mute)}
#pc-files .menu-in span.on{color:var(--brand-deep);border-bottom-color:var(--brand);font-weight:600}
#pc-files .right{background:#fff;border-left:1px solid #D5DDE8;padding:18px 16px;display:flex;flex-direction:column;gap:18px}
#pc-files .right h3{margin:0 0 8px;font-size:14px;color:var(--brand-deep)}
#pc-files .right ol{padding-left:20px;margin:0}
#pc-files .right li{margin-bottom:8px}
#pc-files .right .q{display:inline-block;background:var(--warn-soft);color:var(--warn);font-weight:700;font-size:12px;padding:0 6px;border-radius:3px;margin-right:4px}
#pc-files .board{border-top:1px solid #D5DDE8;padding-top:14px}
#pc-files .board .m{background:#F5F8FC;border:1px solid #D5DDE8;padding:8px 10px;margin-bottom:8px;font-size:13px}
#pc-files .board .m .h{color:var(--mute);font-size:12px}
#pc-files .win{background:var(--win-bg);border:1px solid var(--win-line2);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;flex:1;min-height:540px;box-shadow:0 2px 8px rgba(0,0,0,.08)}
#pc-files .ribbon{display:flex;align-items:center;gap:2px;padding:6px 8px;background:#fff;border-bottom:1px solid var(--win-line);flex-wrap:wrap}
#pc-files .rb{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:4px;font-size:13px;cursor:default;white-space:nowrap}
#pc-files .rb:hover{background:var(--hover)}
#pc-files .rb .i{width:16px;height:16px}
#pc-files .rb.ic{padding:6px 8px;font-size:15px}
#pc-files .rb.ic .i{width:18px;height:18px}
#pc-files .rsep{width:1px;height:22px;background:var(--win-line2);margin:0 6px}
#pc-files .ribbon .r{margin-left:auto;display:flex;gap:2px}
#pc-files .addr{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--win-bg)}
#pc-files .addr .nb{width:28px;height:28px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;color:var(--mute)}
#pc-files .addr .nb.dis{color:#B0B0B0}
#pc-files .addr .path{flex:1;background:#fff;border:1px solid var(--win-line2);border-radius:4px;height:30px;display:flex;align-items:center;padding:0 8px;gap:4px;font-size:13px}
#pc-files .addr .path .seg{padding:2px 6px;border-radius:3px}
#pc-files .addr .path .seg:hover{background:var(--hover)}
#pc-files .addr .path .chev{color:var(--mute);font-size:11px}
#pc-files .addr .path .cur{font-weight:600}
#pc-files .addr .search{width:230px;background:#fff;border:1px solid var(--win-line2);border-radius:4px;height:30px;display:flex;align-items:center;padding:0 10px;color:var(--mute);font-size:13px}
#pc-files .body{display:grid;grid-template-columns:260px 1fr;flex:1;background:#fff;border-top:1px solid var(--win-line)}
@media(max-width:1500px){#pc-files .wrap{grid-template-columns:220px 1fr 340px}
#pc-files .body{grid-template-columns:230px 1fr}}
@media(max-width:900px){#pc-files .wrap{grid-template-columns:1fr}
#pc-files .left,#pc-files .right{display:none}
#pc-files .body{grid-template-columns:1fr}
#pc-files .nav{display:none}}
#pc-files .nav{border-right:1px solid var(--win-line);padding:6px 4px;background:#fff}
#pc-files .nav div{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:4px;white-space:nowrap;font-size:13px}
#pc-files .nav div:hover{background:var(--hover)}
#pc-files .nav .l1{padding-left:26px}
#pc-files .nav .l2{padding-left:44px}
#pc-files .nav .on{background:var(--accent-soft)}
#pc-files .nav .drop-over{outline:2px dashed var(--accent);outline-offset:-2px;background:#F0F7FF}
#pc-files .nav .tg{width:10px;color:var(--mute);font-size:10px;display:inline-block}
#pc-files .nav .c{color:var(--mute);font-size:12px}
#pc-files .nav .inbox{color:var(--warn);font-weight:600}
#pc-files .list{display:flex;flex-direction:column}
#pc-files #list,#pc-files #thumbs{min-height:420px}
#pc-files .dropzone{border:2px dashed var(--accent-soft);color:var(--accent);text-align:center;padding:10px;margin:10px 10px 4px;border-radius:4px;font-size:13px;background:#F7FBFF}
#pc-files table{width:100%;border-collapse:collapse}
#pc-files th{padding:6px 10px;text-align:left;font-weight:400;font-size:13px;color:var(--mute);border-right:1px solid var(--win-line);white-space:nowrap;border-bottom:1px solid var(--win-line)}
#pc-files th:last-child{border-right:none}
#pc-files th .s{color:var(--accent);font-size:10px;margin-left:4px}
#pc-files td{padding:5px 10px;white-space:nowrap;vertical-align:middle;font-size:13px;border-top:2px solid transparent;border-bottom:2px solid transparent}
#pc-files tr.f:hover td{background:var(--hover)}
#pc-files tr.sel td{background:var(--accent-soft)}
#pc-files tr.sel:hover td{background:var(--accent-soft)}
#pc-files tr.dropover td{background:#F0F7FF;border-top:2px dashed var(--accent);border-bottom:2px dashed var(--accent)}
#pc-files tr.dropover td:first-child{border-left:2px dashed var(--accent);border-radius:4px 0 0 4px}
#pc-files tr.dropover td:last-child{border-right:2px dashed var(--accent);border-radius:0 4px 4px 0}
#pc-files td.ck,#pc-files th.ck{width:30px;text-align:center;padding-left:12px}
#pc-files td.ck input{width:14px;height:14px;accent-color:var(--accent)}
#pc-files .ico{display:inline-block;width:18px;height:16px;vertical-align:-3px;margin-right:8px;cursor:pointer}
#pc-files td a.fn{color:var(--ink);text-decoration:none}
#pc-files td a.fn:hover{color:var(--accent);text-decoration:underline}
/* 全画面プレビュー */
.ov{position:fixed;inset:0;background:rgba(20,24,30,.92);display:none;flex-direction:column;z-index:50;color:#fff}
.ov .bar{display:flex;align-items:center;gap:14px;padding:10px 18px;background:rgba(0,0,0,.35);font-size:14px}
.ov .bar .nm{font-weight:600}
.ov .bar .sp{flex:1}
.ov .bar .b{padding:5px 12px;border:1px solid rgba(255,255,255,.4);border-radius:4px;cursor:pointer}
.ov .bar .x{font-size:20px;cursor:pointer;padding:0 6px}
.ov .stage{flex:1;display:flex;align-items:center;justify-content:center;padding:16px;position:relative}
.ov .arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:22px;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-size:22px;cursor:pointer;user-select:none;z-index:2}
.ov .arrow.l{left:12px}
.ov .arrow.r{right:12px}
.ov .arrow.dis{opacity:.25;cursor:default}
.ov .page{background:#fff;color:var(--ink);width:min(900px,calc(100vw - 32px));height:calc(100vh - 140px);border-radius:3px;box-shadow:0 10px 40px rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;position:relative}
.ov .page.ph{background:linear-gradient(160deg,#C9D6E6,#7E97B9);color:#fff}
.ov .page .lbl{font-size:14px;color:var(--mute)}
.ov .page.ph .lbl{color:#fff}
.ov .foot{text-align:center;padding:8px;font-size:13px;color:rgba(255,255,255,.75)}
.ov .pg{display:inline-block;min-width:80px}
#pc-files .right{padding:0}
#pc-files .bbs{display:flex;flex-direction:column;height:calc(100vh - 52px);position:sticky;top:52px}
#pc-files .bbs .hd{padding:10px 16px;border-bottom:1px solid #D5DDE8;font-weight:600;color:var(--brand-deep)}
#pc-files .bbs .msgs{flex:1;overflow:auto;padding:4px 16px}
#pc-files .msg{padding:9px 0;border-bottom:1px solid #E5E5E5;font-size:13px}
#pc-files .msg:last-child{border-bottom:none}
#pc-files .msg .h{color:var(--mute);font-size:12px;margin-bottom:2px}
#pc-files .msg .h b{color:var(--ink);font-size:13px;margin-right:6px}
#pc-files .msg .t{white-space:pre-line}
#pc-files .msg .att{margin-top:4px;color:var(--mute)}
#pc-files .msg .att span{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid #D5DDE8;border-radius:4px;background:#F8FAFD;color:var(--accent);font-size:12px}
#pc-files .bbs .in{border-bottom:1px solid #D5DDE8;padding:10px 12px;display:flex;flex-direction:column;gap:6px}
#pc-files .bbs .in textarea{border:1px solid #D5DDE8;border-radius:4px;padding:6px 8px;font-size:13px;font-family:inherit;resize:vertical;min-height:52px}
#pc-files .bbs .in .row{display:flex;gap:6px;justify-content:flex-end}
#pc-files .bt{display:inline-block;padding:5px 12px;background:var(--brand);color:#fff;border-radius:4px;font-size:13px}
#pc-files .bt.ghost{background:#fff;color:var(--brand);border:1px solid var(--brand)}
#pc-files .bbs .tabs{display:flex;border-bottom:1px solid #D5DDE8}
#pc-files .bbs .tabs span{flex:1;text-align:center;padding:9px 0;font-size:14px;color:var(--mute);border-bottom:2px solid transparent;cursor:pointer}
#pc-files .bbs .tabs span.on{color:var(--brand-deep);border-bottom-color:var(--brand);font-weight:600}
#pc-files .recent{flex:1;overflow:auto;padding:4px 16px;display:none}
#pc-files .recent div{padding:7px 0;border-bottom:1px solid #E5E5E5;font-size:13px}
#pc-files .recent div:last-child{border-bottom:none}
#pc-files .recent .d{color:var(--mute);font-size:12px;display:block}
#pc-files .recent .nm{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pc-files .recent .who{color:var(--mute);margin-left:auto;padding-left:8px}
#pc-files .recent .pth{display:block;font-size:12px;color:#1E5BB8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
#pc-files .recent .pth:hover{text-decoration:underline}
#pc-files .issues{border-top:1px solid #D5DDE8;padding:8px 14px;font-size:12px;color:var(--mute)}
#pc-files .issues summary{cursor:pointer;color:var(--brand-deep);font-weight:600;font-size:13px}
#pc-files .issues ol{padding-left:18px;margin:6px 0 0}
#pc-files .thumbs{display:none;padding:14px;gap:16px;flex-wrap:wrap;align-content:flex-start;width:100%}
#pc-files .thumb{width:140px;padding:6px;border-radius:4px}
#pc-files .thumb:hover{background:var(--hover)}
#pc-files .thumb .im{height:96px;border:1px solid var(--win-line2);border-radius:3px;position:relative;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
#pc-files .thumb .im.ph{background:linear-gradient(160deg,#C9D6E6,#7E97B9)}
#pc-files .thumb .im input{position:absolute;left:5px;top:5px;accent-color:var(--accent)}
#pc-files .thumb .nm{font-size:13px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}
/* ===== スマホ ===== */
#sp{display:none;font-family:"Hiragino Sans","Noto Sans JP","Segoe UI",sans-serif;background:#F5F8FC;min-height:100vh;flex-direction:column}
#sp .hd{background:#fff;border-bottom:2px solid #1E5BB8;padding:12px 14px;display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:5}
#sp .hd b{color:#123E82;font-size:17px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#sp .hd .hb{font-size:24px;color:#123E82;padding:0 4px}
#sp .pane{display:none;flex:1;padding-bottom:70px}
#sp .pane.on{display:block}
#sp .tabbar{position:fixed;left:0;right:0;bottom:0;display:flex;border-top:1px solid #D5DDE8;background:#fff;z-index:5}
#sp .tabbar div{flex:1;text-align:center;padding:6px 8px 8px;font-size:12px;color:#6B6B6B;border-top:3px solid transparent}
#sp .tabbar div.on{color:#123E82;font-weight:700;border-top-color:#1E5BB8;background:#E6EEF9}
#sp .tabbar div.on .ic{filter:none}
#sp .tabbar div .ic{filter:grayscale(1);opacity:.55}
#sp .tabbar div.on .ic{filter:none;opacity:1}
#sp .tabbar div .ic{display:block;font-size:22px;line-height:22px}
#sp .m-write{padding:10px 12px;background:#fff;border-bottom:1px solid #D5DDE8}
#sp .m-write textarea{width:100%;border:1px solid #D5DDE8;border-radius:6px;padding:10px;font-size:15px;font-family:inherit;min-height:64px;resize:none}
#sp .m-write .bt{display:block;margin-top:8px;background:#1E5BB8;color:#fff;text-align:center;padding:11px;border-radius:6px;font-size:15px;font-weight:600}
#sp .m-msg{background:#fff;padding:12px 14px;border-bottom:1px solid #E5E5E5}
#sp .m-msg .h{font-size:13px;color:#6B6B6B;margin-bottom:3px}
#sp .m-msg .h b{color:#1A1A1A;font-size:15px;margin-right:6px}
#sp .m-msg .t{font-size:15px;white-space:pre-line}
#sp .m-crumb{padding:10px 14px;font-size:14px;color:#6B6B6B;background:#fff;border-bottom:1px solid #D5DDE8}
#sp .m-crumb b{color:#1A1A1A}
#sp .m-row{display:flex;align-items:center;gap:12px;padding:13px 14px;background:#fff;border-bottom:1px solid #E5E5E5;min-height:56px}
#sp .m-row svg{width:28px;height:24px;flex:none}
#sp .m-row .nm{flex:1;min-width:0}
#sp .m-row .nm .n{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#sp .m-row .nm .d{font-size:12px;color:#6B6B6B}
#sp .m-row .chev{color:#6B6B6B;font-size:20px}
#sp .m-row input{width:20px;height:20px;accent-color:#0067C0;flex:none}
#sp .m-fab{position:fixed;right:16px;bottom:78px;width:56px;height:56px;border-radius:28px;background:#1E5BB8;color:#fff;display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 4px 12px rgba(0,0,0,.25);z-index:5}
#sp .m-bar{position:fixed;left:0;right:0;bottom:58px;background:#CCE4F7;color:#123E82;padding:10px 14px;font-size:14px;display:flex;align-items:center;gap:10px;z-index:5}
#sp .m-bar .sp1{flex:1}
#sp .m-bar span.b{background:#1E5BB8;color:#fff;padding:6px 14px;border-radius:6px}
#sp .m-todo{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border-bottom:1px solid #E5E5E5}
#sp .m-todo input{width:22px;height:22px;accent-color:#0067C0;flex:none}
#sp .m-todo .t{flex:1;font-size:15px}
#sp .m-todo .t small{display:block;color:#6B6B6B;font-size:12px}
#sp .m-sec{padding:8px 14px;font-size:13px;color:#6B6B6B}
#sp .drawer{position:fixed;inset:0;background:rgba(0,0,0,.35);display:none;z-index:20}
#sp .drawer .panel{position:absolute;top:0;right:0;bottom:0;width:78%;max-width:320px;background:#fff;padding:16px 0;overflow:auto}
#sp .drawer h4{margin:8px 18px 4px;font-size:12px;color:#6B6B6B;font-weight:600}
#sp .drawer div.it{padding:12px 18px;font-size:16px;border-bottom:1px solid #F0F0F0}
#sp .drawer div.it.on{background:#E6EEF9;color:#123E82;font-weight:600;border-left:3px solid #1E5BB8;padding-left:15px}
#sp .drawer div.it.dim{color:#6B6B6B}
#sp .drawer .x{position:absolute;top:10px;right:14px;font-size:24px;color:#6B6B6B}



/* ===== 修正 ===== */
html,body{overflow-x:hidden;max-width:100vw}
@media(min-width:1501px){#pc-home .wrap{grid-template-columns:240px minmax(0,1fr) 380px}#pc-files .wrap{grid-template-columns:240px minmax(0,1fr) 400px}}
@media(min-width:901px) and (max-width:1500px){#pc-home .wrap{grid-template-columns:220px minmax(0,1fr) 320px}#pc-files .wrap{grid-template-columns:220px minmax(0,1fr) 340px}}
#pc-home main,#pc-files main{min-width:0}
#pc-files .win{min-width:0}
#pc-files .body{grid-template-columns:260px minmax(0,1fr)}
@media(max-width:1500px){#pc-files .body{grid-template-columns:230px minmax(0,1fr)}}
#pc-files .list{min-width:0;overflow-x:auto}
#pc-files .list table{min-width:640px}

@media(max-width:900px){#pc{display:none!important;visibility:hidden;height:0;overflow:hidden}#sp{display:flex!important}}
@media(min-width:901px){#sp{display:none!important}}

#sp .m-crumb .vt{float:right;font-size:17px;color:#123E82;padding:0 4px}
#sp .m-row .more{color:#6B6B6B;font-size:22px;padding:0 6px;flex:none}
#sp .sheet{position:fixed;inset:0;background:rgba(0,0,0,.35);display:none;z-index:25}
#sp .sheet .sh{position:absolute;left:0;right:0;bottom:0;background:#fff;border-radius:14px 14px 0 0;padding:8px 0 12px}
#sp .sheet .it{padding:15px 22px;font-size:17px;border-bottom:1px solid #F0F0F0}
#sp .sheet .it.del{color:#B4552D}
#sp .sheet .it.cancel{text-align:center;color:#6B6B6B;border-bottom:none;margin-top:4px}
#sp .sheet .nmh{padding:10px 22px;font-size:13px;color:#6B6B6B;border-bottom:1px solid #F0F0F0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#sp .m-grid{display:none;flex-wrap:wrap;gap:10px;padding:12px}
#sp .m-grid .th{width:calc(33.33% - 7px);}
#sp .m-grid .th .im{height:100px;border:1px solid #D5DDE8;border-radius:6px;background:#fff;display:flex;align-items:center;justify-content:center}
#sp .m-grid .th .im.ph{background:linear-gradient(160deg,#C9D6E6,#7E97B9)}
#sp .m-grid .th .im.fd{background:#FFF7DB}
#sp .m-grid .th .n{font-size:12px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}

.card .rm{display:none;color:#B4552D;margin-left:8px;cursor:pointer;font-size:13px}
.card.editing .rm{display:inline}
.card .addm{display:none;gap:6px;margin-top:8px}
.card.editing .addm{display:flex}
.card .addm input{flex:1;border:1px solid #D5DDE8;border-radius:4px;padding:4px 8px;font-size:13px;font-family:inherit;min-width:0}
.card .addm .bt{background:#1E5BB8;color:#fff;border-radius:4px;padding:4px 10px;font-size:13px;white-space:nowrap}
.card.editing .kv span:not(.k){border:1px solid #D5DDE8;border-radius:3px;padding:1px 6px;background:#fff}

#pc-members,#pc-projedit,#pc-newproj{--ink:#1A1A1A;--mute:#6B6B6B;--line:#D5DDE8;--line2:#E5E5E5;--brand:#1E5BB8;--brand-deep:#123E82;--brand-soft:#E6EEF9;--accent:#0067C0}
#pc-members .wrap,#pc-projedit .wrap,#pc-newproj .wrap{display:grid;grid-template-columns:240px minmax(0,1fr) 380px;min-height:calc(100vh - 52px)}
@media(min-width:901px) and (max-width:1500px){#pc-members .wrap,#pc-projedit .wrap,#pc-newproj .wrap{grid-template-columns:220px minmax(0,1fr) 320px}}
#pc-members .left,#pc-projedit .left,#pc-newproj .left{background:#fff;border-right:1px solid var(--line);padding:16px 0}
#pc-members .left h3,#pc-projedit .left h3,#pc-newproj .left h3{margin:0 0 8px;padding:0 16px;font-size:13px;color:var(--mute)}
#pc-members .left .p,#pc-projedit .left .p,#pc-newproj .left .p{padding:10px 16px;border-left:3px solid transparent}
#pc-members .left .p.on,#pc-projedit .left .p.on,#pc-newproj .left .p.on{background:var(--brand-soft);border-left-color:var(--brand)}
#pc-members .left .p b,#pc-projedit .left .p b,#pc-newproj .left .p b{display:block;font-size:14px}
#pc-members .left .p span,#pc-projedit .left .p span,#pc-newproj .left .p span{font-size:12px;color:var(--mute)}
#pc-members .left .p.dim b,#pc-projedit .left .p.dim b,#pc-newproj .left .p.dim b{color:var(--mute);font-weight:400}
#pc-members main,#pc-projedit main,#pc-newproj main{gap:14px;padding:22px 32px;min-width:0;display:flex;flex-direction:column;gap:14px}
@media(min-width:901px) and (max-width:1500px){#pc-members main,#pc-projedit main,#pc-newproj main{gap:14px;padding:18px 22px}}
#pc-members h1,#pc-projedit h1,#pc-newproj h1{font-size:20px;margin:0;font-weight:600}
#pc-members .menu-in,#pc-projedit .menu-in,#pc-newproj .menu-in{display:flex;border-bottom:1px solid var(--line)}
#pc-members .menu-in span,#pc-projedit .menu-in span,#pc-newproj .menu-in span{padding:6px 14px;border-bottom:2px solid transparent;color:var(--mute);font-size:14px}
#pc-members .menu-in span.on,#pc-projedit .menu-in span.on,#pc-newproj .menu-in span.on{color:var(--brand-deep);border-bottom-color:var(--brand);font-weight:600}
#pc-members .card,#pc-projedit .card,#pc-newproj .card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:16px 20px}
#pc-members .card h4,#pc-projedit .card h4,#pc-newproj .card h4{margin:0;color:var(--brand-deep)}
#pc-members .mt{width:100%;border-collapse:collapse}
#pc-members .mt th,#pc-members .mt td{padding:8px 10px;border-bottom:1px solid var(--line2);text-align:left;font-size:14px;white-space:nowrap}
#pc-members .mt th{font-size:13px;color:var(--mute);font-weight:600}
#pc-members .mt select,#pc-members .inv input,#pc-members .inv select,#pc-projedit input,#pc-projedit textarea,#pc-projedit select,#pc-newproj input,#pc-newproj textarea,#pc-newproj select{border:1px solid var(--line);border-radius:4px;padding:5px 8px;font-size:14px;font-family:inherit;background:#fff}
#pc-members .rm{color:#B4552D;cursor:pointer;font-size:13px}
#pc-members .inv{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
#pc-members .inv .row{display:flex;gap:8px;flex-wrap:wrap}
#pc-members .inv .row input{flex:1;min-width:120px}
#pc-members .bt,#pc-projedit .bt,#pc-newproj .bt{display:inline-block;background:var(--brand);color:#fff;border-radius:4px;padding:6px 14px;font-size:13px;cursor:pointer;white-space:nowrap}
#pc-projedit .bt.ghost,#pc-newproj .bt.ghost{background:#fff;color:var(--brand);border:1px solid var(--brand)}
#pc-projedit .f,#pc-newproj .f{margin-bottom:12px}
#pc-projedit .f label,#pc-newproj .f label{display:block;font-size:13px;color:var(--mute);margin-bottom:3px}
#pc-projedit .f input,#pc-projedit .f textarea,#pc-projedit .f select,#pc-newproj .f input,#pc-projedit .f textarea,#pc-projedit .f select{width:100%}
#pc-members .right,#pc-projedit .right,#pc-newproj .right{background:#fff;border-left:1px solid var(--line);padding:18px 16px;display:flex;flex-direction:column;gap:14px}
#pc-members .right h3,#pc-projedit .right h3,#pc-newproj .right h3{margin:0 0 8px;font-size:14px;color:var(--brand-deep)}
#pc-members .right .card,#pc-projedit .right .card,#pc-newproj .right .card{background:#F8FAFD;padding:12px 14px}
#pc-members .right .card h4,#pc-projedit .right .card h4,#pc-newproj .right .card h4{font-size:14px;margin-bottom:6px}
#pc-members .right .card h4 a,#pc-projedit .right .card h4 a{float:right;font-size:13px;color:var(--accent);font-weight:400;text-decoration:none}
#pc-members .kv,#pc-projedit .kv{display:grid;grid-template-columns:52px 1fr;gap:2px 8px;font-size:13px}
#pc-members .kv .k,#pc-projedit .kv .k{color:var(--mute)}
#pc-members .member,#pc-projedit .member{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:13px}
#pc-members .member .r,#pc-projedit .member .r{margin-left:auto;color:var(--mute)}
#pc-members .files div,#pc-projedit .files div{padding:4px 0;font-size:13px;display:flex;gap:6px;white-space:nowrap;overflow:hidden}
#pc-members .files .d,#pc-projedit .files .d{color:var(--mute);min-width:72px}
#pc-members .issues,#pc-projedit .issues,#pc-newproj .issues{display:none}

/* ===== タブ・見出しの統一 ===== */
#pc-home main,#pc-files main,#pc-members main,#pc-projedit main,#pc-newproj main{gap:14px;display:flex;flex-direction:column;gap:14px;padding:22px 32px;line-height:1.6}
@media(min-width:901px) and (max-width:1500px){#pc-home main,#pc-files main,#pc-members main,#pc-projedit main,#pc-newproj main{gap:14px;padding:18px 22px}}
#pc-home h1,#pc-files h1,#pc-members h1,#pc-projedit h1,#pc-newproj h1{font-size:20px;margin:0;font-weight:600;line-height:1.6}
#pc-home .menu-in,#pc-files .menu-in,#pc-members .menu-in,#pc-projedit .menu-in,#pc-newproj .menu-in{display:flex;border-bottom:1px solid #D5DDE8;margin:0}
#pc-home .menu-in span,#pc-files .menu-in span,#pc-members .menu-in span,#pc-projedit .menu-in span,#pc-newproj .menu-in span{padding:6px 14px;border-bottom:2px solid transparent;color:#6B6B6B;font-size:14px;line-height:1.6}
#pc-home .menu-in span.on,#pc-files .menu-in span.on,#pc-members .menu-in span.on,#pc-projedit .menu-in span.on,#pc-newproj .menu-in span.on{color:#123E82;border-bottom-color:#1E5BB8;font-weight:600}

#pc .left .newp{margin:12px 16px 0;padding:8px 10px;border:1px dashed #1E5BB8;border-radius:4px;color:#1E5BB8;font-size:13px;text-align:center;cursor:pointer}
#pc-newproj{--ink:#1A1A1A;--mute:#6B6B6B;--line:#D5DDE8;--line2:#E5E5E5;--brand:#1E5BB8;--brand-deep:#123E82;--brand-soft:#E6EEF9;--accent:#0067C0}

#pc .left .p{position:relative;padding-left:26px}
#pc .left .p .grip{position:absolute;left:8px;top:11px;color:#C5CBD3;font-size:12px;letter-spacing:-2px;cursor:grab;display:none}
#pc .left .p:hover .grip{display:block}
#pc .left .p.end b{color:#9AA3AE;font-weight:400}
#pc .left .p.end span{color:#B0B7BF}
#pc-projedit .danger,#pc-newproj .danger{margin-top:28px;padding-top:14px;border-top:1px solid #E8C3B2}
#pc-projedit .bt.del{background:#B4552D}
#pc-projedit .sw{display:flex;align-items:center;gap:8px;font-size:14px;color:#1A1A1A}
#pc-projedit .sw input{width:16px;height:16px;accent-color:#0067C0}

#pc-newproj .pt{width:100%;border-collapse:collapse}
#pc-newproj .pt th,#pc-newproj .pt td{padding:8px 10px;border-bottom:1px solid #E5E5E5;text-align:left;font-size:14px;white-space:nowrap;vertical-align:middle}
#pc-newproj .pt td:nth-child(3){white-space:normal;line-height:1.5}
#pc-newproj .pt th{font-size:13px;color:#6B6B6B;font-weight:600}
#pc-newproj .pt .ud{color:#9AA3AE;cursor:pointer;padding:0 3px;font-size:12px}
#pc-newproj .pt .ud:hover{color:#1E5BB8}
#pc-newproj .pt .lk{color:#0067C0;cursor:pointer;font-size:13px}
#pc-newproj .pt .rm{color:#B4552D;cursor:pointer;font-size:13px}
#pc-newproj .pt tr.off td{color:#9AA3AE}
#pc-newproj .pt input[type=checkbox]{width:16px;height:16px;accent-color:#0067C0}
#pc-newproj .edp{display:none;margin-top:20px;padding:14px 16px;background:#F5F8FC;border:1px solid #D5DDE8;border-radius:6px}
#pc-newproj .newf{margin-top:24px;padding-top:16px;border-top:1px solid #D5DDE8}

#pc-newproj .mt{width:100%;border-collapse:collapse;background:#fff}
#pc-newproj .mt th,#pc-newproj .mt td{padding:7px 10px;border-bottom:1px solid #E5E5E5;text-align:left;font-size:14px;white-space:nowrap}
#pc-newproj .mt th{font-size:13px;color:#6B6B6B;font-weight:600;vertical-align:bottom}
#pc-newproj .mt th.c,#pc-newproj .mt td.c{text-align:center;white-space:normal;line-height:1.3}
#pc-newproj .mt td.c input{width:16px;height:16px;accent-color:#0067C0}
#pc-newproj .mt select,#pc-newproj .inv input,#pc-newproj .inv select{border:1px solid #D5DDE8;border-radius:4px;padding:4px 8px;font-size:14px;font-family:inherit;background:#fff}
#pc-newproj .mt .rm{color:#B4552D;cursor:pointer;font-size:13px}
#pc-newproj .mt .lk{color:#0067C0;cursor:pointer;font-size:13px}
#pc-newproj .inv{margin-top:10px}
#pc-newproj .inv .row{display:flex;gap:8px;flex-wrap:wrap}
#pc-newproj .inv .row input{flex:1;min-width:110px}
#pc-newproj .f input,#pc-newproj .f textarea,#pc-newproj .f select,#pc-newproj .f textarea,#pc-newproj .f select{width:100%;border:1px solid #D5DDE8;border-radius:4px;padding:6px 8px;font-size:14px;font-family:inherit;background:#fff}
#pc-newproj .f{margin-bottom:12px}
#pc-newproj .f label{display:block;font-size:13px;color:#6B6B6B;margin-bottom:3px}
#pc-newproj .tabp{display:none}#pc-newproj .tabp.on{display:block}
#pc-newproj .inv.top{margin:0 0 14px;padding:0 0 14px;border-bottom:1px solid #D5DDE8}
#pc-newproj .newc{margin-bottom:14px}
#pc-newproj .wrap{grid-template-columns:240px minmax(0,1fr)!important}

.modal{position:fixed;inset:0;background:rgba(20,24,30,.45);display:none;align-items:center;justify-content:center;z-index:40}
.modal .mbox{background:#fff;border-radius:8px;width:min(640px,calc(100vw - 32px));max-height:calc(100vh - 60px);overflow:auto;padding:18px 22px 20px;box-shadow:0 12px 40px rgba(0,0,0,.3);font-family:"Segoe UI","Yu Gothic UI","Meiryo UI","Hiragino Sans","Noto Sans JP",sans-serif;font-size:14px;color:#1A1A1A}
.modal .mh{font-size:16px;font-weight:600;color:#123E82;margin-bottom:14px;display:flex;align-items:center}
.modal .mx{margin-left:auto;color:#6B6B6B;cursor:pointer;font-size:17px}
.modal .f{margin-bottom:12px}
.modal .f2{display:flex;gap:10px}.modal .f2 .f{flex:1}
.modal .f label{display:block;font-size:13px;color:#6B6B6B;margin-bottom:3px}
.modal .f input,.modal .f textarea,.modal .f select{width:100%;border:1px solid #D5DDE8;border-radius:4px;padding:7px 9px;font-size:14px;font-family:inherit;background:#fff}
.modal .bt{display:inline-block;background:#1E5BB8;color:#fff;border-radius:4px;padding:7px 16px;font-size:14px;cursor:pointer}
.modal .bt.ghost{background:#fff;color:#1E5BB8;border:1px solid #1E5BB8}
#pc .left .p b{font-weight:400}#pc .left .p.on b{font-weight:600}
#pc .left{display:flex;flex-direction:column;position:sticky;top:52px;height:calc(100vh - 52px);overflow:auto}
#pc .left .newp{margin-top:auto;margin-bottom:12px;border-style:solid;border-color:#D5DDE8;color:#1E5BB8;background:#fff}

#pc-files .nav{overflow-x:auto;overflow-y:auto}
#pc-files .nav div{overflow:visible;white-space:nowrap}
#pc-files .nav div .nm{white-space:nowrap}
#pc-files .body{position:relative}
#pc-files .split{position:absolute;top:0;bottom:0;width:6px;cursor:col-resize;z-index:3;background:transparent}
#pc-files .split:hover{background:#CCE4F7}

#pc-files .win{height:calc(100vh - 52px - 22px - 28px - 1.6*18px - 1.6*13px - 12px - 20px - 10px);min-height:420px}
#pc-files .body{min-height:0}
#pc-files .list{min-height:0;display:flex;flex-direction:column}
#pc-files #list{flex:1;min-height:0;overflow:auto}
#pc-files #list table th{position:sticky;top:0;background:#fff;z-index:1}
#pc-files .thumbs{flex:1;min-height:0;overflow:auto}

#pc-files .ribbon{flex-wrap:nowrap;overflow:hidden;gap:0}
#pc-files .rb{padding:6px 8px}
#pc-files .rsep{margin:0 4px}
#pc-files #list table{min-width:0;width:100%;table-layout:auto}
#pc-files #list table th:nth-child(2){width:auto}
#pc-files #list td:nth-child(2){max-width:320px;overflow:hidden;text-overflow:ellipsis}
#pc-files #list td:nth-child(2) a.fn{white-space:nowrap}
#pc-files .win{height:calc(100vh - 52px - 150px);min-height:420px}
#pc-files .wrap{min-height:0}

/* ===== 画面高さに収める ===== */
@media(min-width:901px){
  /* 画面の高さに収めるのは、本体の画面（header.php が出す body.fit）だけ。
     システム管理（#sys）やログイン・招待・再設定の画面は、ページごと普通にスクロールさせる */
  html{height:100%}
  body{min-height:100%}
  body.fit{height:100%;overflow:hidden}
  #pc{height:100vh;display:flex;flex-direction:column}
  #pc .top{flex:none}
  #pc-home,#pc-files,#pc-newproj,#pc-settings,#pc-help{flex:1;min-height:0}
  #pc-home .wrap,#pc-files .wrap,#pc-newproj .wrap{height:calc(100vh - 52px);min-height:0;overflow:hidden}
  #pc-home main,#pc-newproj main{overflow:auto}
  #pc-files main{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}
  #pc-files .win{flex:1;min-height:0;height:auto}
  #pc-files .right .bbs{height:calc(100vh - 52px)}
  #pc-home .right,#pc-newproj .left,#pc-home .left,#pc-files .left{overflow:auto}
  #pc .left{position:static;height:auto}
}
@media(min-width:1501px){#pc-files .wrap{grid-template-columns:240px minmax(0,1fr) 360px}#pc-files .body{grid-template-columns:240px minmax(0,1fr)}}
#pc-files #list td{padding:5px 8px}
#pc-files #list th{padding:6px 8px}
#pc-home .files div{align-items:flex-start}
#pc-home .files .nm small{display:block;font-size:12px;color:#1E5BB8}

#pc-files .addr .path{overflow:hidden;white-space:nowrap;justify-content:flex-start;flex:1 1 0;min-width:0}
#pc-files .addr .path .seg{white-space:nowrap;flex:none}
#pc-files .addr .path .lead{flex:0 1 auto;min-width:24px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
#pc-files .addr .path .lead > *{display:inline}
#pc-files .addr .path .lead::before{content:"…";color:#6B6B6B;padding:0 4px;display:none}
#pc-files .addr .search{flex:0 0 200px;min-width:140px}
@media(max-width:1500px){#pc-files .addr .search{flex:0 0 160px}}
#pc-newproj #tp-l select,#pc-newproj #tp-l input{border:1px solid #D5DDE8;border-radius:4px;padding:5px 8px;font-size:13px;font-family:inherit;background:#fff}
#pc-newproj #tp-l .mt td{white-space:normal}

#pc-home .msg{position:relative}
#pc-home .msg .ops{position:absolute;right:0;top:8px;display:none;gap:10px;font-size:12px}
#pc-home .msg:hover .ops{display:flex}
#pc-home .msg .ops span{color:#0067C0;cursor:pointer}
#pc-home .msg .ops span.del{color:#B4552D}
#pc-home .msg .edited{font-size:12px;color:#6B6B6B;margin-left:6px}
#pc-home .msg.deleted .t{color:#9AA3AE;font-style:normal}
#pc-home .msg .edbox{display:none;margin-top:4px}
#pc-home .msg.editing .t{display:none}
#pc-home .msg.editing .edbox{display:block}
#pc-home .msg .edbox textarea{width:100%;border:1px solid #D5DDE8;border-radius:4px;padding:6px 8px;font-size:14px;font-family:inherit}

#pc-home .pager{display:flex;align-items:center;gap:4px;padding:10px 16px;border-top:1px solid var(--line);font-size:13px}
#pc-home .pager span{min-width:26px;height:26px;line-height:26px;text-align:center;border:1px solid var(--line);border-radius:4px;background:#fff;color:#1E5BB8;cursor:pointer}
#pc-home .pager span.on{background:#1E5BB8;color:#fff;border-color:#1E5BB8}
#pc-home .pager span.dis{color:#B0B7BF;cursor:default}
#pc-home .pager span.cnt{margin-left:auto;border:none;background:transparent;color:#6B6B6B;cursor:default;min-width:0}

#pc-home .recent2{max-height:360px;overflow:auto}
#pc-home .recent2 div{padding:6px 0;border-bottom:1px solid #E5E5E5;font-size:13px}
#pc-home .recent2 .d{color:#6B6B6B;font-size:12px;display:block}
#pc-home .recent2 .nm{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pc-home .recent2 .pth{display:block;font-size:12px;color:#1E5BB8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}

#pc .left .p b{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.45}
#pc h1{white-space:normal;word-break:break-word}
#sp .hd b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#sp .drawer div.it{white-space:normal}
#pc-newproj .pt td:nth-child(2){white-space:normal}

/* ===== ファイル画面の文字を他と揃える ===== */
#pc-files .nav div{font-size:14px;padding:5px 8px}
#pc-files .rb{font-size:14px}
#pc-files .addr .path,#pc-files .addr .search{font-size:14px;height:32px}
#pc-files #list td{font-size:14px;padding:6px 10px}
#pc-files #list th{font-size:13px}
#pc-files .thumb .nm{font-size:13px}
#pc-files .recent div{font-size:13px}
#pc-files .msg{font-size:13px}
#pc-files .msg .h b{font-size:14px}
#pc-files .msg .h{font-size:12px}
#pc-files .ico{width:20px;height:18px}

#pc-home .todo td.tk{cursor:pointer}
#pc-home .todo td.tk:hover{color:#0067C0;text-decoration:underline}
.modal{position:fixed;inset:0;background:rgba(20,24,30,.45);display:none;align-items:center;justify-content:center;z-index:40}
.modal .mbox{background:#fff;border-radius:8px;width:min(640px,calc(100vw - 32px));max-height:calc(100vh - 60px);overflow:auto;padding:18px 22px 20px;box-shadow:0 12px 40px rgba(0,0,0,.3);font-size:14px;color:#1A1A1A}
.modal .mh{font-size:16px;font-weight:600;color:#123E82;margin-bottom:14px;display:flex;align-items:center}
.modal .mx{margin-left:auto;color:#6B6B6B;cursor:pointer;font-size:17px}
.modal .f{margin-bottom:12px}
.modal .f2{display:flex;gap:12px}.modal .f2 .f{flex:1}
.modal .f label{display:block;font-size:13px;color:#6B6B6B;margin-bottom:3px}
.modal .f input,.modal .f textarea,.modal .f select{width:100%;border:1px solid #D5DDE8;border-radius:4px;padding:7px 9px;font-size:14px;font-family:inherit;background:#fff}
.modal .chk{display:flex;flex-wrap:wrap;gap:6px 14px;padding:6px 0}
.modal .chk label{display:flex;align-items:center;gap:5px;font-size:14px;color:#1A1A1A;margin:0}
.modal .chk input{width:15px;height:15px;accent-color:#0067C0}
.modal .bt{display:inline-block;background:#1E5BB8;color:#fff;border-radius:4px;padding:7px 16px;font-size:14px;cursor:pointer}
.modal .bt.ghost{background:#fff;color:#1E5BB8;border:1px solid #1E5BB8}
.modal .bt.del{background:#B4552D}
#pc-home .todo .pager{border-top:1px solid var(--line)}

#sp .m-msg .mo{float:right;color:#6B6B6B;font-size:20px;padding:0 6px;line-height:1}
#sp .m-msg .ed{color:#6B6B6B;font-size:12px}
#sp .m-msg.del .t{color:#9AA3AE}
#sp .m-pager{display:flex;justify-content:center;gap:6px;padding:14px}
#sp .m-pager span{min-width:32px;height:32px;line-height:32px;text-align:center;border:1px solid #D5DDE8;border-radius:4px;background:#fff;color:#1E5BB8;font-size:14px}
#sp .m-pager span.on{background:#1E5BB8;color:#fff;border-color:#1E5BB8}
#sp .m-pager span.dis{color:#B0B7BF}
#sp .m-added{background:#fff;padding:12px 14px;border-bottom:1px solid #D5DDE8;color:#123E82;font-weight:600}
#sp .m-add{background:#fff;padding:10px 14px;border-bottom:1px solid #E5E5E5}
#sp .m-add .d{font-size:12px;color:#6B6B6B}
#sp .m-add .p{font-size:12px;color:#1E5BB8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#sp .m-add .n{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#sp .m-todo .t{cursor:pointer}
#pc-files .nav .trash{margin-top:8px;border-top:1px solid #E5E5E5;padding-top:8px;border-radius:0}
#trashv table{width:100%;border-collapse:collapse}
#pc-newproj .card{max-width:100%!important;overflow-x:auto}
#pc-newproj main{min-width:0}
#pc-newproj .pt td:nth-child(3){white-space:normal;min-width:260px}
.modal .sw{display:flex;align-items:center;gap:8px;font-size:14px;color:#1A1A1A}
.modal .sw input{width:16px;height:16px;accent-color:#0067C0}
.modal .danger{margin-top:24px;padding-top:14px;border-top:1px solid #E8C3B2}
#pc-newproj .lg tr.lr{cursor:pointer}
#pc-newproj .lg tr.lr:hover td{background:#F3F6FB}
#pc-newproj .lg tr.ld{display:none}
#pc-newproj .lg tr.ld td{background:#F8FAFD;font-size:13px;color:#3A4450;white-space:normal;line-height:1.7}
#pc-newproj .lg tr.ld.on{display:table-row}
#pc-newproj .mt .rs{font-size:13px;padding:3px 6px;border:1px solid #D5DDE8;border-radius:4px;background:#fff}
#pc-newproj .mt .sys{display:inline-block;font-size:11px;background:#123E82;color:#fff;border-radius:3px;padding:0 6px;margin-left:6px;vertical-align:middle}





/* ===== 設定（中央一枚） ===== */
#pc-settings .one{height:calc(100vh - 52px);overflow:auto}
#pc-settings main{max-width:760px;margin:0 auto;padding:24px 32px;display:flex;flex-direction:column;gap:14px}
#pc-settings h1{font-size:20px;font-weight:600;margin:0}
#pc-settings .card{background:#fff;border:1px solid #D5DDE8;border-radius:6px;padding:16px 20px;margin:0!important;max-width:none!important}
#pc-settings .card h4{color:#123E82;font-size:16px;margin:0 0 12px}
#pc-settings .f{margin-bottom:12px}
#pc-settings .f2{display:flex;gap:12px}#pc-settings .f2 .f{flex:1}
#pc-settings .f label{display:block;font-size:13px;color:#6B6B6B;margin-bottom:3px}
#pc-settings .f input,#pc-settings .f select{width:100%;border:1px solid #D5DDE8;border-radius:4px;padding:7px 9px;font-size:14px;font-family:inherit;background:#fff}
#pc-settings .bt{display:inline-block;background:#1E5BB8;color:#fff;border-radius:4px;padding:7px 16px;font-size:14px;cursor:pointer}
#pc-settings .bt.ghost{background:#fff;color:#1E5BB8;border:1px solid #1E5BB8}

#pc-settings{--ink:#1A1A1A;--mute:#6B6B6B;--line:#D5DDE8}
#pc-settings .tp{display:none;flex-direction:column;gap:14px}#pc-settings .tp.on{display:flex}
#pc-settings .menu-in{display:flex;border-bottom:1px solid #D5DDE8}
#pc-settings .menu-in span{padding:6px 14px;border-bottom:2px solid transparent;color:#6B6B6B;font-size:14px}
#pc-settings .menu-in span.on{color:#123E82;border-bottom-color:#1E5BB8;font-weight:600}
#pc .left .p.none{color:#B0B7BF;cursor:default}
#pc-newproj .mt .fixed{display:inline-block;padding:3px 10px;color:#123E82;font-weight:600}
.modal .rolegrid{display:grid;grid-template-columns:1fr 140px;gap:6px 12px;align-items:center;font-size:14px}
.modal .rolegrid select{border:1px solid #D5DDE8;border-radius:4px;padding:5px 8px;font-size:14px;font-family:inherit;background:#fff}
#pc-newproj .mt td.rl-a{color:#123E82;font-weight:600}#pc-newproj .mt td.rl-n{color:#C5CBD3}
.modal .who{font-size:14px;margin-bottom:12px}

#pc-help .one{height:calc(100vh - 52px);overflow:auto}
#pc-help main{max-width:760px;margin:0 auto;padding:24px 32px;display:flex;flex-direction:column;gap:14px}
#pc-help h1{font-size:20px;font-weight:600;margin:0}
#pc-help .card{background:#fff;border:1px solid #D5DDE8;border-radius:6px;padding:16px 20px}
#pc-help .card h4{color:#123E82;font-size:16px;margin:0 0 10px}
#pc-help .qa{padding:8px 0;border-bottom:1px solid #E5E5E5}
#pc-help .qa:last-child{border-bottom:none}
#pc-help .qa b{display:block;font-size:14px}
#pc-help .qa p{margin:4px 0 0;font-size:14px;color:#3A4450}

#sp .m-row.trash{color:#B4552D;background:#FFF8F5}
#sp .m-row .more{font-size:14px;color:#1E5BB8;white-space:nowrap}
#sp .m-row .more:empty{display:none}
#pc-home .todo .tabs span:nth-child(2){color:#9AA3AE}
#pc-home .todo .tabs span:nth-child(2).on{color:#6B6B6B;border-bottom-color:#9AA3AE}
#fsv table{width:100%;border-collapse:collapse}
#fsv .pth{color:#1E5BB8;cursor:pointer;font-size:13px}

#pc-home .bbs .hd .cq{margin-left:auto;border:1px solid #D5DDE8;border-radius:4px;padding:4px 10px;font-size:13px;font-family:inherit;font-weight:400;width:260px;outline:none}
#pc-home .bbs .hd .cq:focus{border-color:#1E5BB8}
#pc-home .msg.hide{display:none}
#pc-home .msg mark{background:#FFF1A8;padding:0 1px}
#pc-home .csinfo{display:none;padding:8px 16px;background:#F0F7FF;color:#123E82;font-size:13px;border-bottom:1px solid #CCE4F7}
#sp .m-cq{padding:8px 12px;background:#fff;border-bottom:1px solid #D5DDE8}
#sp .m-cq input{width:100%;border:1px solid #D5DDE8;border-radius:6px;padding:9px 10px;font-size:14px;font-family:inherit}
#sp .m-msg.hide{display:none}
#sp .m-msg mark{background:#FFF1A8;padding:0 1px}
#sp .m-row.up{background:#F0F7FF}
#sp .m-row.added2{background:#F8FAFD}
#sp .m-crumb .seg{color:#1E5BB8}

.sbt{display:inline-flex;align-items:center;justify-content:center;padding:0 12px;background:#1E5BB8;color:#fff;font-size:13px;cursor:pointer;white-space:nowrap;border-radius:0 4px 4px 0;height:100%}
#pc-home .bbs .hd .cqw{margin-left:auto;display:flex;height:30px}
#pc-home .bbs .hd .cq{margin-left:0;border-radius:4px 0 0 4px;height:100%;width:240px}
#sp .m-cq{display:flex;align-items:stretch}
#sp .m-cq input{flex:1;min-width:0;border-radius:6px 0 0 6px;border-right:none;height:42px}
#sp .m-cq .sbt{border-radius:0 6px 6px 0;font-size:16px;padding:0 14px;height:42px;align-self:stretch}
.msg .t a,.m-msg .t a{color:#0067C0;text-decoration:underline;word-break:break-all}
#pc-home .empty-hint{margin:12px 16px;padding:14px 16px;background:#F0F7FF;border:1px dashed #B9CCEB;border-radius:6px;color:#123E82;font-size:14px}

#pc-help main{max-width:1200px}
#pc-help .two{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px;align-items:start}
#pc-help .colL{display:flex;flex-direction:column;gap:14px}
#pc-help .colR{position:sticky;top:0}
@media(max-width:1200px){#pc-help .two{grid-template-columns:1fr}#pc-help .colR{position:static}}

/* ===== ログイン（#login の中だけ） ===== */
#login{margin:0;background:#F5F8FC;color:#1A1A1A;font-family:"Segoe UI","Yu Gothic UI","Meiryo UI","Hiragino Sans","Noto Sans JP",sans-serif;font-size:14px;line-height:1.6;padding:24px}
#login .row{display:flex;gap:28px;flex-wrap:wrap;align-items:flex-start;justify-content:center}
#login .box{width:400px;background:#fff;border:1px solid #D5DDE8;border-top:4px solid #1E5BB8;border-radius:6px;padding:28px 30px}
#login .logo{display:flex;align-items:center;gap:10px;margin-bottom:4px}
#login .logo img{height:40px;width:auto}
#login .logo b{color:#123E82;font-size:20px}
#login .sub{color:#6B6B6B;font-size:13px;margin-bottom:18px}
#login h2{font-size:16px;margin:0 0 12px;color:#123E82}
#login .f{margin-bottom:14px}
#login .f label{display:block;font-size:13px;color:#6B6B6B;margin-bottom:3px}
#login .f input{width:100%;border:1px solid #D5DDE8;border-radius:4px;padding:10px 10px;font-size:15px;font-family:inherit}
#login .bt{display:block;width:100%;text-align:center;background:#1E5BB8;color:#fff;border-radius:4px;padding:11px;font-size:15px;font-weight:600;cursor:pointer}
#login .lk{color:#0067C0;font-size:13px;text-decoration:none}
#login .note{font-size:12px;color:#6B6B6B;margin-top:12px;line-height:1.7}
#login .warn{background:#FBEDE6;color:#B4552D;border:1px solid #E8C3B2;border-radius:4px;padding:8px 10px;font-size:13px;margin-bottom:12px}
#login .cap{text-align:center;font-size:12px;color:#6B6B6B;margin-top:10px}
#login .ro{background:#F5F8FC;border:1px solid #E5E5E5;border-radius:4px;padding:8px 10px;font-size:14px}

/* ===== システム管理（#sys の中だけ） ===== */
#sys{margin:0;background:#F5F8FC;color:#1A1A1A;font-family:"Segoe UI","Yu Gothic UI","Meiryo UI","Hiragino Sans","Noto Sans JP",sans-serif;font-size:14px;line-height:1.6}
#sys .top{background:#fff;border-bottom:2px solid #7C5A2E;display:flex;align-items:center;height:52px;padding:0 24px;gap:14px}
#sys .top .brand{color:#7C5A2E;font-weight:700;font-size:17px}
#sys .top .sub{color:#6B6B6B;font-size:13px}
#sys .top .who{margin-left:auto;font-size:13px;color:#6B6B6B}
#sys main{max-width:1100px;margin:0 auto;padding:24px 32px;display:flex;flex-direction:column;gap:14px}
#sys h1{font-size:20px;font-weight:600;margin:0}
#sys .tabs{display:flex;border-bottom:1px solid #D5DDE8;flex-wrap:wrap}
#sys .tabs span{padding:6px 14px;border-bottom:2px solid transparent;color:#6B6B6B;cursor:pointer}
#sys .tabs span.on{color:#7C5A2E;border-bottom-color:#7C5A2E;font-weight:600}
#sys .tp{display:none;flex-direction:column;gap:14px}
#sys .tp.on{display:flex}
#sys .card{background:#fff;border:1px solid #D5DDE8;border-radius:6px;padding:16px 20px;overflow-x:auto}
#sys .card h4{color:#7C5A2E;font-size:16px;margin:0 0 12px}
#sys .f{margin-bottom:12px}
#sys .f label{display:block;font-size:13px;color:#6B6B6B;margin-bottom:3px}
#sys .f input,#sys .f select{border:1px solid #D5DDE8;border-radius:4px;padding:7px 9px;font-size:14px;font-family:inherit;background:#fff;width:100%}
#sys .bt{display:inline-block;background:#7C5A2E;color:#fff;border-radius:4px;padding:7px 16px;font-size:14px;cursor:pointer}
#sys .bt.ghost{background:#fff;color:#7C5A2E;border:1px solid #7C5A2E}
#sys .bt.sm{padding:3px 10px;font-size:12px}
#sys table{width:100%;border-collapse:collapse}
#sys th,#sys td{padding:8px 10px;border-bottom:1px solid #E5E5E5;text-align:left;font-size:14px;white-space:nowrap;vertical-align:middle}
#sys th{font-size:13px;color:#6B6B6B;font-weight:600}
#sys td.wrap{white-space:normal}
#sys .tag{display:inline-block;font-size:12px;padding:0 8px;border-radius:9px;border:1px solid #D5DDE8;background:#fff;color:#6B6B6B}
#sys .tag.off{background:#F3F3F3}
#sys .tag.warn{background:#FBEDE6;border-color:#E8C3B2;color:#B4552D}
#sys .tag.ok{background:#EEF4EA;border-color:#BED0B6;color:#3D5A45}
#sys .lk{color:#0067C0;cursor:pointer;font-size:13px}
#sys .rm{color:#B4552D;cursor:pointer;font-size:13px}
#sys .kv{display:grid;grid-template-columns:200px 1fr;gap:6px 12px;font-size:14px}
#sys .kv .k{color:#6B6B6B}
#sys .bar{height:10px;background:#EEF1F5;border-radius:5px;overflow:hidden}
#sys .bar i{display:block;height:100%;background:#7C5A2E}
#sys .note{font-size:12px;color:#6B6B6B;margin-top:8px}
#sys .filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
#sys .filters select,#sys .filters input{border:1px solid #D5DDE8;border-radius:4px;padding:5px 8px;font-size:13px;font-family:inherit;background:#fff}
#sys .box{background:#F8F5F0;border:1px solid #E0D5C5;border-radius:6px;padding:14px 16px;margin-bottom:14px}
#sys .subtabs{display:flex;align-items:center;border-bottom:1px solid #D5DDE8;margin-bottom:10px}
#sys .subtabs span{padding:6px 14px;border-bottom:2px solid transparent;color:#6B6B6B;cursor:pointer}
#sys .subtabs span.on{color:#7C5A2E;border-bottom-color:#7C5A2E;font-weight:600}
#sys .subtabs input{border:1px solid #D5DDE8;border-radius:4px;padding:5px 8px;font-size:13px;font-family:inherit;background:#fff;margin-bottom:6px}
#sys td:last-child{text-align:right;white-space:nowrap}
#sys .subtabs em{font-style:normal;font-size:12px;color:#6B6B6B;margin-left:2px}
#sys .subtabs span.on em{color:#7C5A2E}

/* ===== 実装で足したもの：ファイルを重ねているときの点線（一覧の空き・木のフォルダ） ===== */
#pc-files #list.dropover{outline:2px dashed #0067C0;outline-offset:-2px}
#pc-files .nav div.dropover{outline:2px dashed #0067C0}
/* 実装で足したもの：API の注意の一行（ログイン画面の .warn と同じ見た目）。窓の中と、画面の先頭 */
.apiwarn{background:#FBEDE6;color:#B4552D;border:1px solid #E8C3B2;border-radius:4px;padding:8px 10px;font-size:13px;margin-bottom:12px}
#pc main > .apiwarn,#sp .pane > .apiwarn{margin:8px 14px}
/* 実装で足したもの：予定が0件のときの一行（薄い字だけ。枠なし） */
#pc-home .todo .none{padding:10px 16px;color:#9AA3AE;font-size:14px}
#sp .m-none{padding:12px 14px;color:#9AA3AE;font-size:14px;background:#fff;border-bottom:1px solid #E5E5E5}
/* 実装で足したもの：移動の窓のフォルダ一覧、ファイル画面の「空」の一行 */
.modal .mvlist{max-height:50vh;overflow:auto;border:1px solid #D5DDE8;border-radius:4px;padding:6px 0}
.modal .mvlist label{display:flex;align-items:center;gap:6px;padding:5px 10px;font-size:14px;cursor:pointer;white-space:nowrap}
.modal .mvlist label:hover{background:#F0F0F0}
.modal .mvlist input{accent-color:#0067C0;margin:0}
.modal .mvlist .ico{width:18px;height:16px;flex:none}
#pc-files .none{padding:10px 12px;color:#9AA3AE;font-size:14px}
/* 実装で足したもの：プレビューの中身（写真・PDF・見られないもの） */
.ov .page img{max-width:100%;max-height:100%;object-fit:contain}
.ov .page iframe{width:100%;height:100%;border:0;background:#fff}
.ov .page .nopv{text-align:center;color:#6B6B6B;font-size:14px}
.ov .page .nopv .b{display:inline-block;margin-top:12px;padding:7px 16px;background:#1E5BB8;color:#fff;border-radius:4px;cursor:pointer}
/* 実装で足したもの：サムネイルの写真（実物を縮めて出す。サムネイル表示に切り替えたときだけ読む） */
#pc-files .thumb .im.ph img,#sp .m-grid .th .im.ph img{width:100%;height:100%;object-fit:cover;border-radius:3px}
/* 実装で足したもの：設定・ヘルプはスマホでも同じ一枚を出す。上部は「‹ 戻る」と「ログアウト」だけ */
#pc .top .back{display:none}
@media(max-width:900px){
  #pc.solo{display:block!important;visibility:visible;height:auto;overflow:visible}
  #pc.solo .top{padding:0 14px}
  #pc.solo .top a:not(.back):not(.logout),#pc.solo .top .gear:not(.logout){display:none}
  #pc.solo .top .back{display:inline-block;color:#1E5BB8;font-size:15px;text-decoration:none;padding:0 6px;height:52px;line-height:50px}
  #pc.solo .top .logout{display:inline-block}
  #pc.solo .one{height:auto;min-height:calc(100vh - 52px)}
  #pc.solo main{padding:16px 14px}
  #pc.solo #pc-help .two{grid-template-columns:1fr}
}
.saved{padding:8px 12px;background:#F0F7FF;color:#123E82;font-size:13px;border:1px solid #CCE4F7;border-radius:4px}
/* 実装で足したもの：メンバー一覧の「外す」を出す（.card .rm{display:none} はカード編集の見本用） */
#pc-newproj .mt .rm{display:inline}
/* 実装で足したもの：「その人として見る」の帯（本体の上。PC・スマホ共通） */
.impband{background:#FBEDE6;color:#B4552D;border-bottom:1px solid #E8C3B2;padding:6px 24px;font-size:13px}
.impband a{color:#0067C0;margin-left:10px}
#sp .impband{padding:6px 14px}
/* システム管理：ログの詳細行（行を押すと開く）、ページ送り */
#sys tr.det{display:none}
#sys tr.det.on{display:table-row}
#sys tr.det td{white-space:pre-wrap;font-size:12px;color:#444;background:#FAF8F5}
#sys tr.lxr{cursor:pointer}
#sys .pager{display:flex;gap:6px;align-items:center;font-size:13px;margin-top:8px}
#sys .pager a{color:#0067C0;text-decoration:none;border:1px solid #D5DDE8;border-radius:4px;padding:2px 8px}
#sys .otpkey{font-family:Consolas,monospace;font-size:18px;letter-spacing:2px;background:#F8F5F0;border:1px solid #E0D5C5;border-radius:4px;padding:8px 12px;display:inline-block;margin:6px 0}
#sys .saved{padding:8px 12px;background:#EEF4EA;color:#3D5A45;font-size:13px;border:1px solid #BED0B6;border-radius:4px}
#sys .apiwarn{background:#FBEDE6;color:#B4552D;border:1px solid #E8C3B2;border-radius:4px;padding:8px 10px;font-size:13px;margin-bottom:12px}
/* 実装で足したもの：プレビューの帯に出す撮影日時と地図リンク（薄字。帯の形そのものは変えない） */
.ov .bar .ex{color:rgba(255,255,255,.72);font-size:13px}
.ov .bar .map{color:#9FD0FF;font-size:13px;text-decoration:underline;cursor:pointer}
/* 実装で足したもの：写真は EXIF の向きのまま出す（今のブラウザの既定を明示するだけ。回転は足さない） */
.ov .page img,#pc-files .thumb .im.ph img,#sp .m-grid .th .im.ph img{image-orientation:from-image}
/* 実装で足したもの：「メンバーを招く」で、既にいる人のときの知らせ行と、読み取り専用の欄 */
.modal .f .fnote{font-size:13px;color:#123E82;background:#F0F7FF;border:1px solid #CCE4F7;border-radius:4px;padding:6px 8px;margin-top:5px}
.modal .f input.ro{background:#F5F3EF;color:#4A4A4A}
.modal .bt.dis{background:#C8CDD4;cursor:default}
/* 実装で足したもの：システム管理の「処理時間」（[karted perf] の行をそのまま出す） */
#sys .perf{font-family:Consolas,"Courier New",monospace;font-size:12px;line-height:1.7;background:#FAF8F5;border:1px solid #E0D5C5;border-radius:4px;padding:10px 12px;margin:0;max-height:420px;overflow:auto;white-space:pre;word-break:normal}

/* 実装で足したもの：サムネイルのチェックを大きく（押しやすく） */
#pc-files .thumb .im input{left:6px;top:6px;width:22px;height:22px;cursor:pointer}
/* 実装で足したもの：スマホの一覧のチェックを 24px に */
#sp .m-row input{width:24px;height:24px}
/* 実装で足したもの：「移動」の窓。ラジオ→アイコン→名前を一行に、深さぶん字下げ（左のフォルダ木と同じ見た目）
   id で指定して、他の .ico の指定に負けないようにする */
#mvlist label{display:flex;align-items:center;justify-content:flex-start;gap:6px;padding:5px 10px;font-size:14px;cursor:pointer;text-align:left}
#mvlist input[type=radio]{flex:none;width:16px;height:16px;margin:0;accent-color:#0067C0}
#mvlist .ico{flex:none;width:18px;height:16px;margin:0}
#mvlist .nm{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* 実装で足したもの：置いている最中の進みの帯（一覧の上） */
#upbar{padding:8px 12px;background:#F0F7FF;border-bottom:1px solid #CCE4F7}
#upbar .t{font-size:13px;color:#123E82;margin-bottom:5px}
#upbar .g{height:6px;background:#D9E7F7;border-radius:3px;overflow:hidden}
#upbar .g i{display:block;height:100%;width:0;background:#1E5BB8;transition:width .2s}
